pel*_*lea 0 javascript reactjs auth0
我想将用户重定向到登录工作流程之前他所在的当前页面。
是否有可能将其他信息传递给auth0-js(例如{from: '/profile'})?
这是我在React应用程序中对Auth0-js的初始化:
auth0 = new auth0.WebAuth({
domain: 'xxx.auth0.com',
clientID: 'xxx',
redirectUri: 'http://localhost:3000/callback',
audience: 'https://xxx.auth0.com/userinfo',
responseType: 'token id_token',
scope: 'openid profile offline_access'
});
Run Code Online (Sandbox Code Playgroud)
要记录用户:
auth0.authorize();
Run Code Online (Sandbox Code Playgroud)
如果不将信息存储在localStorage中,我找不到方法。
披露:我为Auth0工作。
您的应用程序不应在回调中接受任意参数,并使用它来重定向用户。我建议将信息存储在localStorage中,并使用诸如的唯一哈希引用它state。
例如
const state = getRandomBytes(32); // Assume that this method will give you 32 bytes
localStorage[state] = { pathToGotoAfterAuth: '/somepath' };
auth0.authorize({
state: state
});
// Then later
const authResult = auth0.parseHash();
const state = authResult.state;
const olderAppState = localStorage[state];
localStorage.remove(state);
redirect(olderAppState.pathToGotoAfterAuth);
Run Code Online (Sandbox Code Playgroud)
然后在回调时,您将收到此状态,然后您的应用程序可以使用存储的版本执行必要的操作。
这具有几个优点,例如
| 归档时间: |
|
| 查看次数: |
546 次 |
| 最近记录: |