引入外部文件的时候为什么省略http:

【摘要】相信很多时候大家在使用网上的实例代码的时候,需要引入外部文件,然而它们通常都是省略了http:,这是为什么呢?

先给大家看一个简单的小例子,引入外部jquery文件:

  1. <script src="//code.jquery.com/jquery-1.9.1.js"></script>

然而通常我们引入外部文件都是需要写全url的:

  1. <script src="http://code.jquery.com/jquery-1.9.1.js"></script>

当然这里常常省去http:自然是有原因的,有两个方面的原因:

第一点,是这种写法是相对路径的写法,对于相对的URL,浏览器在处理的过程中(发送http请求),会将它转化为绝对路径,即补全URL的协议、域名和路径。所以请求//code.jquery.com/jquery-1.9.1.js,浏览器则会补全协议http或者https,补全的原则是与当前页面打开的协议相同。

第二点,也就是最重要的一点,是用户的请求的协议是不清楚的有可能是http协议也有可能是https协议,(注意:https协议是基于http协议之上的,是一种安全的超文本传输协议),所以既然不知道开发者使用的协议,倒不如直接使用相对路径的写法来引入外部文件,这样就能够保证我们引入的外部文件能够不受协议的影响,使得与用户使用的协议一致。

这以后当我们再次看到没有写http:引入外部文件的时候可不要再大惊小怪了,知道原因了吗?

 

 

转载于:https://www.cnblogs.com/kuangke/p/6626718.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值