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 或未定义的对象上执行代码。