gpt4 book ai didi

c# - 使用不同域中的 oidc-client 和 identityServer4 登录

转载 作者:搜寻专家 更新时间:2023-10-30 22:49:21 24 4
gpt4 key购买 nike

我在本地主机中有一个 VueJs 应用程序,它使用 oidc-client.js 库来登录到另一个域中生产中的 IdentityServer4 服务器。

登录后,IdentityServer 将我重定向到 VueJs 应用程序,然后我调用方法 signinRedirectCallback(),但是 oidc-client 方法 getUser() 没有给出给我用户信息。

如果我检查 LocalStorage,我可以看到 oidc.user:IdentityServer4Url 值,我可以在其中看到用户的所有信息(access_token、id_token、profile ecc...),并且我'设置 Cookie“idsrv”、“idsrv.session”、“ARRAffinity”。

如果我在同一个域中尝试该应用程序,它就可以工作。是否可以拥有本地主机应用程序并登录到另一个域?谢谢

最佳答案

您绝对可以将您的身份服务器放在不同的域中,而且几乎大多数大型 IDP(身份提供者)都将位于不同的域中。

当你说你有本地存储的信息时,你确定访问 token 与你在 singin 响应 url 中收到的相同吗?在本地存储中,您会看到一个名为“expires_at”的属性,我想,看看该值是否有效。

https://github.com/IdentityModel/oidc-client-js/blob/dev/src/UserManager.js#L595

如果一切正常,我想不出它不应该检索的任何其他原因。

另一种可以帮助您的调试技术是?进入你的node_modules文件夹,找到oidc-cient-js文件夹,将package.json文件中的main属性从oidc-client.min.js修改为oidc-client.js,这样就可以断点调试了步骤并找出发生了什么。

希望这对您有所帮助。

关于c# - 使用不同域中的 oidc-client 和 identityServer4 登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57783893/

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