Auth0 和 javascript Lock v11 问题
Issue with Auth0 and javascript Lock v11
我正在尝试使用 auth0 和 Lock v1 登录表单在我的网络应用程序上测试基本身份验证模块。
这是我正在使用的代码的快照:
<script src="https://cdn.auth0.com/js/lock/11.23.1/lock.min.js"></script>
<script type="text/javascript" src="js/auth0variables.js"></script>
<script type="text/javascript" src="js/auth0app.js"></script>
<script>
$( document ).ready(function() {
console.log("start");
var lock = new Auth0Lock(AUTH0_CLIENT_ID, AUTH0_DOMAIN, {
auth: {
redirectUrl: 'undefined',
responseType: 'code',
params: {
scope: 'openid email' // Learn about scopes: https://auth0.com/docs/scopes
}
}
});
lock.show();
});
</script>
问题是我无法获得 auth0 模态,因为我收到以下错误:
Uncaught TypeError: Cannot read property 'protocol' of null
at Object.getOriginFromUrl (auth0.min.esm.js:8)
at G.run (auth0.min.esm.js:8)
at $.checkSession (auth0.min.esm.js:8)
at nt.getSSOData (auth0.min.esm.js:8)
at t.getSSOData (p2_api.js:190)
at t.getSSOData (web_api.js:64)
at t.fetchFn (data.js:4)
at t.fetch (cache.js:17)
at t.get (cache.js:13)
at r (data.js:7)
我不明白我是否在 Auth0 仪表板上以错误的方式配置我的应用程序,我是否缺少调用 Auth0Lock
方法的某些配置参数,或者问题是否出在其他地方。
有人可以帮我吗?谢谢!
我在 ath0 github 存储库上的以下讨论中找到了解决方法:
https://github.com/auth0/lock/issues/1638
为了避免 getLocationFromUrl
返回 null
值,我在 Auth0Lock
构造函数
中设置了 redirectUrl
选项
<script src="https://cdn.auth0.com/js/lock/11.23.1/lock.min.js"></script>
<script type="text/javascript" src="js/auth0variables.js"></script>
<script type="text/javascript" src="js/auth0app.js"></script>
<script>
$( document ).ready(function() {
console.log("start");
var lock = new Auth0Lock(AUTH0_CLIENT_ID, AUTH0_DOMAIN, {
auth: {
redirectUrl: 'http://localhost',
//redirectUrl: 'file://',
responseType: 'code',
params: {
scope: 'openid email' // Learn about scopes: https://auth0.com/docs/scopes
}
}
});
lock.show();
});
</script>
redirectUrl: 'http://localhost'
或 redirectUrl: 'file://'
选项都适合我的开发目的。
我正在尝试使用 auth0 和 Lock v1 登录表单在我的网络应用程序上测试基本身份验证模块。
这是我正在使用的代码的快照:
<script src="https://cdn.auth0.com/js/lock/11.23.1/lock.min.js"></script>
<script type="text/javascript" src="js/auth0variables.js"></script>
<script type="text/javascript" src="js/auth0app.js"></script>
<script>
$( document ).ready(function() {
console.log("start");
var lock = new Auth0Lock(AUTH0_CLIENT_ID, AUTH0_DOMAIN, {
auth: {
redirectUrl: 'undefined',
responseType: 'code',
params: {
scope: 'openid email' // Learn about scopes: https://auth0.com/docs/scopes
}
}
});
lock.show();
});
</script>
问题是我无法获得 auth0 模态,因为我收到以下错误:
Uncaught TypeError: Cannot read property 'protocol' of null
at Object.getOriginFromUrl (auth0.min.esm.js:8)
at G.run (auth0.min.esm.js:8)
at $.checkSession (auth0.min.esm.js:8)
at nt.getSSOData (auth0.min.esm.js:8)
at t.getSSOData (p2_api.js:190)
at t.getSSOData (web_api.js:64)
at t.fetchFn (data.js:4)
at t.fetch (cache.js:17)
at t.get (cache.js:13)
at r (data.js:7)
我不明白我是否在 Auth0 仪表板上以错误的方式配置我的应用程序,我是否缺少调用 Auth0Lock
方法的某些配置参数,或者问题是否出在其他地方。
有人可以帮我吗?谢谢!
我在 ath0 github 存储库上的以下讨论中找到了解决方法:
https://github.com/auth0/lock/issues/1638
为了避免 getLocationFromUrl
返回 null
值,我在 Auth0Lock
构造函数
redirectUrl
选项
<script src="https://cdn.auth0.com/js/lock/11.23.1/lock.min.js"></script>
<script type="text/javascript" src="js/auth0variables.js"></script>
<script type="text/javascript" src="js/auth0app.js"></script>
<script>
$( document ).ready(function() {
console.log("start");
var lock = new Auth0Lock(AUTH0_CLIENT_ID, AUTH0_DOMAIN, {
auth: {
redirectUrl: 'http://localhost',
//redirectUrl: 'file://',
responseType: 'code',
params: {
scope: 'openid email' // Learn about scopes: https://auth0.com/docs/scopes
}
}
});
lock.show();
});
</script>
redirectUrl: 'http://localhost'
或 redirectUrl: 'file://'
选项都适合我的开发目的。