【发布时间】:2018-03-18 10:10:34
【问题描述】:
Auth0 有一个很棒的文档,有时即使你阅读了 1000 次,它对我个人来说也没有意义,所以希望其他人也有类似的问题。
我想要什么?
我从本地主机环境登录,该环境使用 auth0.WebAuth 对象编译,如下所示:
auth0 = new auth0.WebAuth({
clientID: 'adscsdcascascascasdcsdac',
domain: 'webatom.auth0.com',
responseType: 'token id_token',
audience: 'https://api.webatom.com',
redirectUri: 'http://localhost:5000/callback',
scope: 'openid profile'
});
我希望它将开发人员重定向到本地主机。
如果我从生产环境登录(或用户登录),即。从 jtrade.pro 我希望他们被重定向到 jtrade.pro/callback。显然,生产版本中的对象看起来像这样(使用不同的重定向 uri):
auth0 = new auth0.WebAuth({
clientID: 'adscsdcascascascasdcsdac',
domain: 'webatom.auth0.com',
responseType: 'token id_token',
audience: 'https://api.webatom.com',
redirectUri: 'http://jtrade.pro/callback',
scope: 'openid profile'
});
据我了解,您就是这样做的。传递 uri,如果 uri 在客户端设置中被列入白名单并以逗号分隔,您将被重定向到所需的页面。漂亮,我已列入白名单并用逗号分隔。
最后一步,托管页面。
var lock = new Auth0Lock(config.clientID, config.auth0Domain, {
auth: {
redirectUrl: config.callbackURL,
responseType: 'token',
params: config.internalOptions
},
assetsUrl: config.assetsUrl,
allowedConnections: connection ? [connection] : null,
rememberLastLogin: !prompt,
language: language,
languageDictionary: languageDictionary,
theme: {
},
prefill: loginHint ? { email: loginHint, username: loginHint } : null,
closable: false,
});
重定向 URL 设置为 config.callbackURL,据我了解,这使 auth0 查看白名单并查看提供的 uri 之一是否存在,如果存在则重定向用户。
但是,这不会发生。 Auth0 仅将用户重定向到白名单中的第一个 uri。我找不到适合此问题的解决方案。希望也有人遇到这种情况。
【问题讨论】:
标签: auth0