【问题标题】:How to return error from Auth0 hooks如何从 Auth0 挂钩返回错误
【发布时间】:2017-09-20 01:57:53
【问题描述】:

如果我想从规则中返回自定义错误,我只需做回调(new UnauthorizedError('Custom error message here')),但是如何使用 Hooks 做同样的事情?

回调('错误信息'); 回调(新错误('错误消息'));

这些都不起作用,并且 Hooks 中未定义“UnauthorizedError”。无论我做什么,在前端我总是得到“我们很抱歉,尝试注册时出了点问题。”当我检查请求的结果时,我发现每次都出现“InternalExtensibilityError”时没有区别。

为什么我想从 Hooks 返回错误?我在那里进行了额外的注册验证。

【问题讨论】:

    标签: auth0


    【解决方案1】:

    现在可以在挂钩中发送自定义错误消息。 我从 Auth0 的 hooks 文档中提取了下面的代码 sn-p。

    module.exports = function (user, context, cb) {
      const isUserDenied = ...; // determine if a user should be allowed to register
    
      if (isUserDenied) {
        const LOCALIZED_MESSAGES = {
          en: 'You are not allowed to register.',
          es: 'No tienes permitido registrarte.'
        };
    
        const localizedMessage = LOCALIZED_MESSAGES[context.renderLanguage] || LOCALIZED_MESSAGES['en'];
        return cb(new PreUserRegistrationError('Denied user registration in Pre-User Registration Hook', localizedMessage));
      }
    };

    这是原始链接(https://auth0.com/docs/hooks/extensibility-points/pre-user-registration

    【讨论】:

    • 这仍然会产生与上述问题相同的响应消息。好像还没有修复。
    • 根据 auth0,您的租户必须配置为使用通用登录 - 新体验。
    • 你的意思是经典的通用登录不能与钩子无缝地工作吗?
    • 不,在我上面贴的链接中明确提到了。
    • 无论如何,我在多次失败后不再使用 auth0 挂钩。不过,有几个人面临同样的问题。这是我一个月前在 auth0 社区提出的一个问题,我们正在等待他们的回复。 community.auth0.com/t/…
    【解决方案2】:

    目前,在 Auth0 中无法将自定义错误从挂钩返回到顶级 API,/dbconnections/signup 在这种情况下是不可能的。这记录在page 的底部。

    请注意,Hooks 仍处于测试阶段,此增强请求是最受要求的功能之一,目前在我们的积压中。我们还不能为此提供预计到达时间。您可以将您的反馈提交给产品here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-03-23
      • 2016-05-28
      • 2016-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多