url中的双斜杠//代表的意义

图片地址:https://upload-images.jianshu.io/upload_images/2849271-0cd2a78eb9e6ceb7.jpeg?imageMogr2/auto-orient/strip|imageView2/2/w/800/format/webp

今天在爬取一个网站的时候,遇到一个img标签 src是//upload-images.jianshu.io/upload_images/2849271-0cd2a78eb9e6ceb7.jpeg?imageMogr2/auto-orient/strip|imageView2/2/w/800/format/webp

这种以//开头的。我当时就很不理解,没见过//开头的

经过测试,这种//开头的写法,就是表示网址的开头,比如 //www.baidu,com  会转换为 https://www.baidu.com

当然如果不支持https协议就是 http://www.baidu.com了

//是网络路径引用的意思

然后一个群里大佬考了我这样一个问题

那么问题来了如果是本地的 html,以 file:// 打开的,会是什么情况

我当时第一感觉就和上面一样,还是认为是补充的http和https

但是人家问了,肯定不是这么容易

测试后发现

是file协议的/图片访问失败了

得到的结果是,网络协议补充http或https

file文件协议,就是补充file协议,

如果https协议可以访问,优先补充https协议,不成功就是http协议了,这个由浏览器决定

补充:群里大佬指点【JAVA里的sendRedirect就用的这种参数】

查资料,资料连接:https://www.zhihu.com/question/37063799/answer/70242462

这篇文章解释了为什么是三斜杠的原因了,因为file没有host 

到这里你应该明白双斜杠//怎么用了,简单说就是使用http协议和https协议

如果你想深入研究的话

可以查询以下几个知识点

uri scheme

URI,URL,Uri

http协议和https协议

PS:今天进了一个群,真的都是爱技术的一群人,很高兴认识他们,好喜欢这个讨论技术的氛围,同时也收到了一点打击吧,不会的好多啊,还要学~还要学~还要学

 

 

 

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值