Openid 中的片段 URL - 是什么意思?
如果我使用我的 Yahoo 帐户作为 Openid-Provider,它会返回此 url 作为我的身份:
https://me.yahoo.com/a/9dodtB5.udVP6zRSRfAxIzPO6XXVdbqlS4jp#85bb1
我认为奇怪的是哈希标签 #
之后的片段。
请求资源时,这些符合 HTTP 标准的片段不会传输到服务器。我知道访问它们的唯一方法是在客户端浏览器中使用 JavaScript。
那么它如何成为 Openid 身份的一部分或不可以呢?
因此,如果我让我的网站接受 Openid,我会得到一个存储在数据库中的身份,并且如果用户想要登录/注册,我会查询完全匹配的身份。
我应该存储片段吗?
我认为这并没有什么坏处,因为到目前为止我见过的所有 Openid 库都按原样存储身份(带有片段)。
但这不是某种违反或标准的行为吗?我不知道。
If I use my Yahoo-Account as an Openid-Provider it returns this url as my identity:
https://me.yahoo.com/a/9dodtB5.udVP6zRSRfAxIzPO6XXVdbqlS4jp#85bb1
What I think is odd is the fragment after the hash tag #
.
Those fragments by HTTP standard don't get transferred to the server when requesting a resource. The only way I am aware of accessing them is within the clients browser using JavaScript.
So how can it be part of an Openid Identity or can it not?
So if I enable my website to accept Openid I get an Identity that I store in a Database and that I query for exact matches if a user wants to log in / register.
Should I store the fragment or not?
I think it doesn't hurt because all Openid-Libraries that I have seen so far store the identity AS-IS (with the fragment).
But isn't it some sort of Violation or the standard? I am not sure.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我不知道 Openid 2.0 中的标准添加了以下内容:
所以它最终确实有意义,因为身份本身并没有真正改变。这意味着如果我请求 openid,片段就会被删除,并且我总是请求相同的资源,后面带有相同的 XRDS 文档。
I wasn't aware of an addition to the Standard in Openid 2.0 that says the following:
So it in the end really makes sense, because the identity itself doesn't really change. Meaning if I request the openid, the fragment gets stripped, and I always request the same resource with the same XRDS document behind.