Cordova 在浏览器脱机访问中运行的Ionic2中使用Auth0进行Google身份验证
我正在尝试将Auth0用于Ionic2测试应用程序。我正试图让谷歌登录工作在'离子服务'或'离子运行浏览器'。这是我的Auth0设置Cordova 在浏览器脱机访问中运行的Ionic2中使用Auth0进行Google身份验证,cordova,angular,ionic2,google-authentication,auth0,Cordova,Angular,Ionic2,Google Authentication,Auth0,我正在尝试将Auth0用于Ionic2测试应用程序。我正试图让谷歌登录工作在'离子服务'或'离子运行浏览器'。这是我的Auth0设置 auth0 = new Auth0({clientID: 'yyy', domain: 'xxx.auth0.com' }); lock = new Auth0Lock('yyy', 'xxx.auth0.com', { auth: { redirect: false, params: { scope:
auth0 = new Auth0({clientID: 'yyy', domain: 'xxx.auth0.com' });
lock = new Auth0Lock('yyy', 'xxx.auth0.com', {
auth: {
redirect: false,
params: {
scope: 'openid',
//scope: 'openid offline_access', // DOES NOT WORK
device:'Mobile device'
}
}
});
请求脱机访问会导致身份验证失败并出现错误
{
error: "invalid_request",
errorDescription: "device parameter must be specified",
state: "aaa-bbb"
}
尽管我提供了一个deviceName,但为什么这个失败?检查答案
故意不提供在浏览器中设置“设备名称”以获得脱机访问
我们不建议将此流用于在浏览器中运行的web应用程序,因为浏览器不是设备。为了防止web应用程序上下文中的会话过期,最好增加JWT的生存期,然后在用户每次访问应用程序时自动刷新令牌
我建议用一个装置试试。
爱奥尼亚跑步-设备应该可以工作。这有帮助吗?也许你错过了什么@suraj我阅读了Auth0的指南,但这似乎是完全相同的指南。我看不出有什么遗漏。我意识到为什么需要“deviceName”,为什么它对于浏览器模式没有意义,因为它不是一个设备。但是我能像教程建议的那样自己提供吗?我已经看到了,但是因为它说“不推荐”,我认为它应该仍然有效。但我放弃了!好如果它起作用,它可能会被“Auth0”视为一个bug: