查询字符串以标识资源

时间:2018-06-20 11:57:24

标签: http uri query-string

在HTTP协议中,URI用于标识资源,查询字符串表示根据msdn

的其他参数。
  

在将资源返回给用户之前,Web服务器可以使用这些参数做一些额外的工作。

我的问题是从HTTP中介的角度来看,仅在查询字符串中有所区别的两个相似的URI是否标识两个不同的资源?

1 个答案:

答案 0 :(得分:0)

在查询组件中不同的HTTP URI不等效(除非唯一的区别是percent-encoding of unreserved characters)。它们仍然可以标识相同的资源,但这与在URI标准的眼中确定它们是否等效无关。

URI标准(STD 66;当前:RFC 3986)解释了如何检查URI是否等效:
Normalization and Comparison

示例

这些URI是等效的:

http://example.com/foo?bar
http://example.com/foo?ba%72
http://example.com:80/foo?bar

这些URI不相同:

http://example.com/foo?bar
http://example.com/foo?baz

这些等效项(details)也不相同:

http://example.com/foo
http://example.com/foo?