hum*_*ont 6 firebase reactjs firebase-authentication firebaseui
使用 ReactJS Web 和 FirebaseUI Auth。
我正在尝试创建一个包含登录用户的 uid 的 signInSuccessUrl: /users/${userId}。
我的假设是这需要在回调中定义,但我似乎无法使其工作。
目前,它默认重定向到signInSuccessUrl,而不是使用回调...
任何帮助深表感谢!
const uiConfig = {
signInFlow: 'popup',
signInSuccessUrl: '/',
signInOptions: [
firebase.auth.GoogleAuthProvider.PROVIDER_ID,
firebase.auth.FacebookAuthProvider.PROVIDER_ID,
{ provider: firebase.auth.EmailAuthProvider.PROVIDER_ID,
requireDisplayName: true
},
],
// the area where i assume something is going wrong...
callbacks: {
signInSuccess: function(currentUser, credential, redirectUrl) {
const userId = currentUser.uid;
redirectUrl = `/users/${userId}`;
return false
},
}
};
Run Code Online (Sandbox Code Playgroud)
redirectUrl不是你想的那样。signInSuccessUrl如果查询参数附加到当前页面,则它会填充查询参数的内容。它提供了一种在登录流程结束时获取该 URL 的简单方法,如果您使用 accountchooser.com,则很难获取该 URL。
要获得您想要的行为,请将代码更改为以下内容:
signInSuccess: function(currentUser, credential, redirectUrl) {
const userId = currentUser.uid;
// Manually redirect.
window.location.assign(`/users/${userId}`);
// Do not automatically redirect.
return false;
},
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7552 次 |
| 最近记录: |