缺省协议,使用//替代http://和https://

一、定义

// 是缺省协议,默认使用当前页面的协议。
如果当前页面使用的是 http 协议,则//自动识别并替换为http://,如果使用的是 https 协议,则//自动识别并替换为https://

例如:www.guowang.com

  • 当前页面为http协议时,则等效于http://www.guowang.com
  • 当前页面为https协议时,则等效于https://www.guowang.com
二、优缺点

优点:

  1. 自适应httphttps协议,能根据用户打开页面的方式自动识别请求协议;
  2. 当前页面和目标资源同时支持httphttps,并支持正在从http升级到https
  3. 对于https页面的内容,浏览器默认会组织非https内容(http协议在https协议的页面里会报错),使用//可以避免这种情况。

缺点:

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

通过缺省协议的优缺点,我们可以在开发阶段使用固定的协议来调试代码,当要部署准生产或者生产环境时,将固定协议修改为缺省协议。

三、应用场景
  1. 当网站从http协议升级为https协议时,使用//可以避免修改前端代码中的所有链接地址,如a标签的href,img标签的src;
  2. 开发时,写成 “//网址/文件” 来替代前面的协议,例如://www.guowang.com/web,具体是ssl协议还是普通的http协议,交给浏览器去自动识别并与当前站点匹配,从而实现最佳的安全请求和最高效的加载方法。
四、使用细节

当一个前端人被藐视的时候:用 // 代替 http:// 有什么好处?

1、如果你用 http:// ,那你就是默认当前页面是 http 协议了,你一个前端凭什么决定当前页面的协议,难道你不知道 http 链接在 https 页面里会报错啊?

2、你应该沿用当前页面的协议,所以你要写 //如果你用 https://,也是一样的问题,你怎么知道三年后会不会出现一个 httpshe://,难道到时候你再全部改成 httpshe:// ?

3、不要做任何明显是错误的假设!你根本就不知道当前页面会用什么协议打开!所以你要用 // 啊!

五、HTTP与HTTPS比较

HTTP

  1. http默认端口:80;
  2. http走明文通道,信息是明文传输;
  3. http是最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议;
  4. http可以使浏览器更加高效,使网络传输减少。

HTTPS

  1. https默认端口:443;
  2. https走加密通道,具有安全性的ssl加密传输协议,要申请 CA证书,收费的多,免费的少;
  3. https是http的安全版,即http下加入ssl层,https的安全基础是ssl,加密的详细内容就需要ssl,https更安全。

HTTPS的作用:

  1. 建立一个信息安全通道,来保证数据传输的安全;
  2. 确认网站的真实性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值