React SPA Azure ADB2C 密码重置用户流程
React SPA Azure ADB2C password reset user flow
我正在关注带有 msal 和 AADB2C 的 React 示例。
如果用户在我的 signIn
流程中单击“忘记密码”,我想 运行 reset password flow
。从 here 我看到我需要处理这个案例:
if (event.eventType === EventType.LOGIN_FAILURE) {
if (event.error && event.error.errorMessage.indexOf("AADB2C90118") > -1) {
if (event.interactionType === InteractionType.Redirect) {
instance.loginRedirect(b2cPolicies.authorities.forgotPassword);
} else if (event.interactionType === InteractionType.Popup) {
instance.loginPopup(b2cPolicies.authorities.forgotPassword)
.catch(e => {
return;
});
}
}
}
而forgotPassword
权限是URL,例如https://tenantName.b2clogin.com/tenantName.onmicrosoft.com/B2C_1_PasswordReset
。虽然我正在关注这些示例和文档,但我已经 运行 解决了这个问题,但似乎没有任何提及或解决方案:
Unhandled Rejection (TypeError): Cannot create property 'authenticationScheme' on string 'https://tenantName.b2clogin.com/tenantName.onmicrosoft.com/B2C_1_PasswordReset'
您在控制台中收到错误:未处理的拒绝 (TypeError):无法在字符串
上创建 属性 'authenticationScheme'
您收到此错误是因为您在代码中的某处使用了“authenticationScheme”,但此时“authenticationScheme”对象为 null 或未定义。
更新您的代码:
if (authenticationScheme) {
do something here.
}
更新后,如果 authenticationScheme 为 null 或未定义,则它将不会在 null 或未定义的对象上执行代码。
我正在关注带有 msal 和 AADB2C 的 React 示例。
如果用户在我的 signIn
流程中单击“忘记密码”,我想 运行 reset password flow
。从 here 我看到我需要处理这个案例:
if (event.eventType === EventType.LOGIN_FAILURE) {
if (event.error && event.error.errorMessage.indexOf("AADB2C90118") > -1) {
if (event.interactionType === InteractionType.Redirect) {
instance.loginRedirect(b2cPolicies.authorities.forgotPassword);
} else if (event.interactionType === InteractionType.Popup) {
instance.loginPopup(b2cPolicies.authorities.forgotPassword)
.catch(e => {
return;
});
}
}
}
而forgotPassword
权限是URL,例如https://tenantName.b2clogin.com/tenantName.onmicrosoft.com/B2C_1_PasswordReset
。虽然我正在关注这些示例和文档,但我已经 运行 解决了这个问题,但似乎没有任何提及或解决方案:
Unhandled Rejection (TypeError): Cannot create property 'authenticationScheme' on string 'https://tenantName.b2clogin.com/tenantName.onmicrosoft.com/B2C_1_PasswordReset'
您在控制台中收到错误:未处理的拒绝 (TypeError):无法在字符串
上创建 属性 'authenticationScheme'您收到此错误是因为您在代码中的某处使用了“authenticationScheme”,但此时“authenticationScheme”对象为 null 或未定义。
更新您的代码:
if (authenticationScheme) {
do something here.
}
更新后,如果 authenticationScheme 为 null 或未定义,则它将不会在 null 或未定义的对象上执行代码。