网络路径参考URI /方案相对URL

Jon*_*ter 60 html browser url response.redirect protocol-relative

方案相对URL(网络路径引用)是我刚刚发现的 - 你没有指定URL的方案,它从当前上下文中选择它.

例如: 如果当前方案是HTTPS或不是,则<img src="//domain.com/img.png" />解析为.https://domain.com/img.pnghttp://domain.com/img.png

这似乎是一种非常简单的方法来解决在SSL页面上调用外部脚本或图像的麻烦问题,而不会引起页面上某些内容不安全的可怕错误.

好处似乎很明显,但我似乎无法找到的是关于此的大量信息,并且想知道是否有人有任何关于方案相对URL(好或坏)的经验或参考?

虽然我试图发现是否有任何浏览器导致问题(我已经成功使用IE6-8,Chrome和Firefox),我也有兴趣了解是否有任何人有使用此功能的不同经验语言.例如,如果你Response.Redirect在ASP中发布一个方案相对URL ,它会起作用吗?

Dan*_*llo 56

//domain.com/img.png是一个完全有效的URI语法,根据RFC 3986:第4.2节.

它与当前方案相关,因此正如您所提到的,在http和https之间切换时非常有用,因为您不需要显式指定方案.

所有现代浏览器都将理解该格式,包括IE 6.

进一步阅读Stack Overflow:

  • 这是一个链接,解释了为什么Google不会将其用于Google Analytics.简而言之,它会导致Windows XP上的IE6出现问题(但仅限于该浏览器不支持TLS SNI).http://paulirish.com/2010/the-protocol-relative-url/#comment-37852 (6认同)
  • 这些网址并不新鲜.它们是自1995年以来URL规范的一部分(参见[RFC 1808](http://tools.ietf.org/html/rfc1808)). (5认同)
  • @Dan Atkinson:对于谷歌分析而言,与任何晦涩的用户代理兼容可能更为重要,并且可能他们发现这更可靠.但是,我想一般来说,我们的Web应用程序不必与Netscape 2时代的浏览器兼容. (4认同)

MPV*_*MPV 9

如果要支持IE 7和8,您可能需要考虑样式表的方案相对URL将导致它们被下载两次:

[...]如果您在Internet Explorer 7和8中尝试此操作,您将看到使用协议相对URL指定的样式表将被下载两次.

如果开发人员希望他们的页面在Internet Explorer 7和8中尽可能快,则应避免使用样式表的协议相对URL.

资料来源:http://www.stevesouders.com/blog/2010/02/10/5a-missing-schema-double-download/

  • 抬头+1.我的反应很好*.缓慢的IE将更加缓慢,使更好的浏览器显得更好. (2认同)