我正在使用Azure AD的.NET Core中实现Microsoft身份验证。我设法正确地实现了这个身份验证,并在身份验证过程完成后重定向到一个swagger端点。
问题是令牌是在重定向URL中给出的,如下所示:token in url
为了将请求发送到端点,我必须手动复制该令牌并将其附加到请求中,否则我仍然会获得未经授权的代码。
有没有什么方法可以在重定向时提取令牌并将其保存在会话中(或类似的),并将其自动包含在下一个请求中?
如果没有,我至少可以用某种方式提取令牌字符串吗?因为我没有找到任何方法来读取正在显示的URL的实际当前值,只有当发出请求时,我才能够读取地址,但那是请求,而不是实际的/swagger/access_token...等等
1条答案
按热度按时间yrefmtwq1#
您已经正确地设置了一切,令牌是在URL中给予客户端(您的Web浏览器)是一个标准的实践。现在,客户端(Web浏览器上的网页)负责在每次请求时将该令牌发送到Web服务器。要处理这个问题,您需要客户端编码/ JavaScript
您应该:
但从问题来看,我猜你对客户机-服务器架构并不熟悉,只是玩服务器部分?在这种情况下,一种可能性(不建议)是:
这样做只是为了测试。您应该阅读客户端与服务器的概念以及相关的概念(Http请求、Http报头、Cookie、Session、JavaScript)