根据http://tools.ietf.org/html/rfc3986和http://en.wikipedia.org/wiki/Uniform_resource_identifier,URI可能包含也可能不包含方案标识符后面的双斜杠。这使得“urn:issn:1535-3613”成为有效的URI,就像“http://stackoverflow.com”一样。
是否存在严格/正式的需要包含双斜杠或者是否是可选的,无论如何,原因/语义是什么?在回答时,请提供一个确定的答案 - 不要只报告浏览器/库/ ...如何处理它。
答案 0 :(得分:14)
它在你链接的RFC中:如果有//
,则意味着接下来的是权限。见Section 3。因此,如果该方案使用权限,它将在冒号后使用//
(要么需要它,如果该方案中需要权限,或者拥有它如果权限在该方案中是可选的,则是可选的)。 mailto
在URI意义上不使用权限,因此mailto
URI不包含//
。
答案 1 :(得分:5)
除了彻底解释答案的RFC之外,我想你可能会直接从inventor of the World Wide Web本人那里得到这句话。
当[Tim Berners-Lee先生]被问到他会做什么时 换句话说,答案很简单。 “我会摆脱斜线 结肠后斜线。你真的不需要它。它看起来像是一个 当时好主意。“
来源:http://www.wired.co.uk/news/archive/2014-02/06/tim-berners-lee-reclaim-the-web
答案 2 :(得分:1)
好吧,如果你想要一个“结论性答案”,我认为没有什么比官方HTTP RFC document更具决定性了(参见3.2.2讨论HTTP URL方案)。