这是我第一次遇到 JWT 令牌,我想知道该令牌在首次创建后如何返回给客户端。它应该进入Authorization : Bearer header?通常,是客户端Authorization : Bearer header在每个请求中传递令牌。我想知道在用户通过身份验证并创建令牌后,服务器如何将此令牌传递给客户端。也在同一个标题中?在不同的标题中?在我的情况下,服务器将生成令牌而不是作为响应,而是作为请求的一部分。例如:-用户将登录到门户,然后单击指向授权应用程序的链接。包含用户声明的 JWT 将作为请求的一部分传递给授权应用程序。这里最好的方法是什么?获取还是发布?标题(哪个)?请求参数?POST 身体?谢谢!
3 回答
翻过高山走不出你
TA贡献1875条经验 获得超3个赞
此外,当您可以将令牌放入 url 时,还有另一种策略。在服务器端,您可以在 url 之后添加令牌,以防您从某些安全服务重定向。例如:
http://[my-app]/index.html?access_token=sadmopwmopmdmvsasom....
然后在 js 中你可以这样得到它:
let url = new URL(window.location);
let accessToken = url.searchParams.get("access_token");
但是,请记住,这种方法不能被认为是安全的。
蛊毒传说
TA贡献1895条经验 获得超3个赞
人们可能有兴趣知道OAuth 2.0 标准为此目的指定了响应主体:
5.1. 成功响应
授权服务器发出访问令牌和可选的刷新令牌,并通过将以下参数添加到带有 200(OK)状态代码的 HTTP 响应的实体主体中来构造响应:
access_token
必需的。授权服务器颁发的访问令牌。
[...]
添加回答
举报
0/150
提交
取消