//缺省协议的讲解,用 //代替 http:// 有什么好处?

时间: 2017-11-20阅读: 561标签: 协议

//缺省协议的使用,代表资源访问的协议和当前页面保持一致,如果当前页面是http ,采用http协议访问,如果是https,则使用 https  协议访问。这样用就不管是http还是升级到https都不用改动代码,现在很多CDN资源都是这样引用。一般使用在内链中,外链的协议头具有不确定性的原因。


//的含义?

//是缺省协议的写法,例如

//fly63.com/path

缺省协议默认使用当前协议

当前页面为HTTP时,等效
http://fly63.com/path
当前页面为HTTPS时,等效
https://fly63.com/path


使用 // 代替 http:// 的条件和好处?

当前页面和目标资源同时支持HTTP和HTTPS正在从http升级到https

这样的好处就是能根据用户打开页面的方式自适应的选择资源的请求协议,

对于https页面的内容,浏览器默认会组织非https内容,可以避免这种情况


// 缺点

直接打开本地文件调试时,使用的协议是文件协议(file://)

这个时候这个协议会变成 file://fly63.com/path显然是不存在的


与当前网站的协议保持一致,快速发布与你当前协议相匹配的版本,同时减少SSL或其它协议版本的部署成本。开发者不需要管服务器云端提供什么协议,只要用//符号来代表一切最适应的匹配,这和nodeJS的思维是一脉相承的。


来源整理:知乎