Tag: user agent

我为什么要使用用户代理访问url?

我有一个类似于这个问题的代码。 在接受的答案中扩展代码也对我有用。 在此之前,我使用过这种类型的代码,从不遇到任何exception。 现在,我的问题是: 我为什么要使用用户代理? 为什么有必要在我的程序中使用? 是否有必要在每个程序中使用? 如果是的话,我的程序之前如何运行得如此之好? 如果不是,为什么我现在必须处理这个? 如何生成字符串”Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)” ? (我想知道确切的格式)。 请注意 : 我修复它的程序,我每天都使用它,但之前从未遇到任何问题。

基于哈希片段的安全性如何工作?

我正在学习OAuth 2.0,无法在隐式授权流程中获得保护访问令牌的方法。 规范中有一些论文和一些看起来相互矛盾的SO答案。 有人可以清理一下吗? 来自SO答案和规范的引言令我感到困惑: (来自规范)用于将访问令牌传递到客户端的重定向URI。 可以向访问资源所有者的用户代理的资源所有者或其他应用程序公开访问令牌。 (来自规范)访问令牌凭证(以及任何机密访问令牌属性)必须在传输和存储中保密,并且仅在授权服务器,访问令牌有效的资源服务器以及客户端之间共享。发出访问令牌。 访问令牌凭证必须仅使用TLS传输。 (来自已接受和赞成的回答 )在隐式流中,访问令牌作为哈希片段传递,只有浏览器知道哈希片段。 浏览器会将哈希片段直接传递到目标网页/重定向URI,即客户端的网页(哈希片段不是HTTP请求的一部分),因此您必须使用Javascript读取哈希片段。 哈希片段不能被中间服务器/路由器拦截(这很重要)。 我的问题: P1表示通过重定向URI和P2传递给客户端的令牌表示传递通道必须是TLS编辑的。 但是P3说哈希片段没有发送到网络 。 如果访问令牌没有发送,那么它是如何到达客户端的,因为它是哈希片段? 无论如何,它必须通过网络发送不是吗? 或者使用重定向URI发送令牌可以在没有网络交易的情 唯一可能的解释 – 在引擎盖下浏览器仅通过网络发送url的非哈希部分,并且在加载新页面之后,只需插入哈希片段并使其可用于JS。 如果我是对的,我仍然无法理解为什么我们不简单地使用可靠,安全的HTTPS通道作为响应参数发送令牌?