HTTP Location 标头中的完全限定 url。为啥它很重要?
Posted
技术标签:
【中文标题】HTTP Location 标头中的完全限定 url。为啥它很重要?【英文标题】:Fully-qualified urls in HTTP Location header. Why it is important?HTTP Location 标头中的完全限定 url。为什么它很重要? 【发布时间】:2016-09-21 14:51:03 【问题描述】:所以我从 Fiddler 收到了一些警告,说我在 HTTP Location 标头中有错误的 url,它们应该是完全合格的。为什么它如此重要以及可能导致哪些问题?
【问题讨论】:
位置标头的正式定义只是将有效负载定义为绝对 URL。所以使用相对的东西违反了协议定义:w3.org/Protocols/rfc2616/rfc2616-sec14.html 这并不意味着相对目标必须中断,但您绝对不能保证客户端会按照您期望的方式做出反应。 @arkascha 您指的是过时的规范 【参考方案1】:HTTP/1.1 (RFC 2616 § 14.30) 的旧标准要求 Location
是绝对 URI。
实施经验表明这并不重要,并且许多实施允许在Location
中使用相对 URI,因此当前标准 (RFC 7231 § 7.1.2) 允许使用相对 URI。
【讨论】:
以上是关于HTTP Location 标头中的完全限定 url。为啥它很重要?的主要内容,如果未能解决你的问题,请参考以下文章
AngularJS $http ajax 不遵循 Location 标头