Jwt 为什么id_令牌是通过带有片段标识符而不是查询字符串的url传递的?

Jwt 为什么id_令牌是通过带有片段标识符而不是查询字符串的url传递的?,jwt,openid,github-api,yahoo-api,Jwt,Openid,Github Api,Yahoo Api,在openid身份验证之后,id_令牌(jwt)通过URI片段而不是查询字符串传递给客户端,这使得服务器无法读取。这背后真正的格言是什么。这有什么好处呢?只是出于同样的好奇心,找到了答案: 按照 在片段中返回id_令牌可降低id_令牌在传输过程中泄漏的可能性,并减轻对用户(资源所有者)隐私的相关风险 您可以通过添加response\u mode=query来获取查询字符串,但不建议这样做。这与授权代码流相同。在加载URL之前,用户代理(例如浏览器)应该剥离片段,这样片段就不会出现在服务器端日志中

在openid身份验证之后,id_令牌(jwt)通过URI片段而不是查询字符串传递给客户端,这使得服务器无法读取。这背后真正的格言是什么。这有什么好处呢?

只是出于同样的好奇心,找到了答案:

按照

在片段中返回id_令牌可降低id_令牌在传输过程中泄漏的可能性,并减轻对用户(资源所有者)隐私的相关风险


您可以通过添加response\u mode=query来获取查询字符串,但不建议这样做。这与授权代码流相同。

在加载URL之前,用户代理(例如浏览器)应该剥离片段,这样片段就不会出现在服务器端日志中


应该注意的是,浏览器实现的最新变化使上述假设受到质疑,依赖授权代码流可能更安全。

我认为它需要由客户端处理,而不是由服务器端处理。但为什么他们坚持要由客户来处理呢