浏览器支持以双斜杠开头的URL

时间:2011-07-22 03:47:24

标签: url browser cross-browser

我最近看到一些没有协议的链接。这似乎并不太难理解 - 我认为这是一个好主意,非常直观。

对于那些不知道的人,使用//example.com/script.js之类的网址会指向http://example.com/script.jshttps://example.com/script.js,具体取决于网址是否来自 http https 网址。例如,在https页面中包含http脚本或图像可能是一个安全问题,因此无需在代码中进行协议检测即可解决此问题。

我的问题是,它有什么样的浏览器/操作系统支持?在生产中使用是否安全?这肯定会让事情变得容易一些。

简单的例子和​​测试: http://codetester.org/916c6916

编辑: 只是一个跟进,我已经使用这个为我公司的广告服务器生产了很多东西,而且几年没有问题。

2 个答案:

答案 0 :(得分:83)

此行为是RFC 1808(第4部分)的一部分,大约有16年的历史,因此每个主要浏览器都应该(并且确实)支持此行为。

可悲的是,如果在link@import上使用协议相对网址,那么a bug with IE7 and -8会让他们下载资源两次 - 这不应该是一个大问题,但是很难看,应该记住。

答案 1 :(得分:2)

如果您正在使用本地计算机进行开发,则可能会因src="file://host.com/filename".

而失败

在这种情况下,您需要明确指定方案:http://host.com/filenamehttps://host.com/filename