“两个正斜杠”是“现在正在使用什么协议”的常用缩写。
最有名的是“协议相对URL”,当可以从
http或
https上下文加载元素(例如您示例中的JS文件)时,它们特别有用。通过使用协议相对URL,您可以避免实施
if (window.location.protocol === 'http:') { myResourceUrl = 'http://example.com/my-resource.js';} else { myResourceUrl = 'https://example.com/my-resource.js';}整个代码库中的逻辑类型(当然,假设服务器
example.com能够同时通过
http和来提供资源
https)。
Magento电子商务引擎是现实世界中一个著名的例子:出于性能原因,
http默认情况下,商店的页面使用纯文本,而结帐功能已
https启用。
当非协议相关的URL(即
http://example.com/banner.jpg)引用了硬编码的资源(即网站标题中的促销横幅)时,到达已
https启用结帐处的客户会受到相当不友好的欢迎
“此页面上存在不安全的元素”
提示-就像您可以想象的那样,这会让普通的不懂技术的人丢掉。
如果通过上述方式引用了上述资源
//example.com/banner.jpg,则浏览器将在适当的协议之前进行处理。
tl; dr:即使在混合http / https环境的可能性很小的情况下,也只需使用双斜杠/协议相对URL来加载资源-
假设提供内容的主机同时启用了http和https。


![url / src / href属性中的两个正斜杠[重复] url / src / href属性中的两个正斜杠[重复]](http://www.mshxw.com/aiimages/31/575457.png)
