gpt4 book ai didi

authentication - 带有 auth0-lock 的 Auth0 仅在使用调试器时进行身份验证,以缓慢地逐步执行代码

转载 作者:太空狗 更新时间:2023-10-29 17:21:27 25 4
gpt4 key购买 nike

正如标题所说,我正在尝试将 auth0-lock 与 Angular 2 SPA 和 ASP.NET Core API 一起使用。我在验证自己的身份以进行测试时遇到问题。我还使用 webpack 来打包应用程序,并删除了所有其他引用,只剩下裸授权应用程序。

我在这里遵循了他们的教程:https://auth0.com/docs/quickstart/spa/angular2

问题是当我点击构造函数时,它只会在我使用调试器慢慢地逐步执行库代码时进行身份验证。

constructor() {
debugger
// Add callback for lock `authenticated` event
this.lock.on("authenticated", (authResult) => {
debugger
localStorage.setItem('id_token', authResult.idToken);
});
}

如果我删除调试器并让它以正常速度运行,它永远不会进行身份验证; auth0-lock 会出现,我可以登录然后它会重新加载,但我不会登录,本地存储中也不会有任何内容。

更新:所以我想我找到了这个问题的原因。使用 Angular 2 的最新组件路由器;如果我将路由注释掉,身份验证会立即生效,但将其放回原处我必须使用调试器来减慢它的速度。否则,它不会auth。有什么办法可以解决这个问题吗?

当我通过身份验证时,我还遇到了另一个问题,查询我的 API 我得到了响应 401 Unauthorized,即使 Auth0 说我已获得授权。我可以在 localStorage 中看到我的 token ,以及在 angular2-jwt 中找到的 authHttp 模块的使用来自另一个 Auth0 angular 2 教程。

我的后端 (asp.net Core) 有一个带有 [Authorise] 的方法。我按照这里的设置 https://auth0.com/docs/quickstart/backend/aspnet-core-webapi关于如何开始,除了我遇到上述问题。

更新:原来这个问题是我跳过教程中关于将 SignatureAlgorithm 更改为使用 RS256 的部分引起的我已经将其更改为使用 RS256 方法并且在这方面工作正常现在仍然有问题,当我在 Angular 2 上启用路由时它不会验证这是该项目的 Github Repo:https://github.com/Toxicable/Templates

最佳答案

关于启用路由时围绕身份验证的问题,这可能与 Angular 2 router will not preserve query and fragment parameters upon navigation 的事实有关。 .

这意味着 Auth0 Lock 不会在 URL 中看到与身份验证相关的参数,因此不会对用户进行身份验证。如果是这种情况,请尝试按照其他答案 ( How to use the HashLocationStrategy with the Auth0 Lock widget for user login ) 中指示的过程进行操作,尽管那些解决了使用 HashLocationStrategy 进行路由的情况,我不知道这是不是你的案例。

关于authentication - 带有 auth0-lock 的 Auth0 仅在使用调试器时进行身份验证,以缓慢地逐步执行代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38243016/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com