uri中为什么本地文件file后面跟三个斜杠, http等协议跟两个斜杠?
2023-09-27 14:22:24 时间
https://www.zhihu.com/question/37063799/answer/70242462
————————————————————————————————————————————
那就要从URI[1]的结构来看了
可以看到,如果有host的时候,前面是要加 // 的,因此对于 http 等这些网络地址来讲
写成这样很自然。
那么如果是文件呢?文件因为没有 host 啊,所以中间的部分就不要了,那么就变成了
对于文件来讲,似乎 // 不要也是没有任何关系的呢
其实根据上面的定义来讲,下面的才是正确的。因为如果没有 host 的话,第一个 [] 的内容就不应该存在了啊。
[1] Uniform Resource Identifier
[2] http://www.w3.org/TR/curie/
scheme:[//[user:password@]host[:port]][/]path[?query][#fragment]
http://www.baidu.sb:80/ad/cash
那么如果是文件呢?文件因为没有 host 啊,所以中间的部分就不要了,那么就变成了
file:///ad/cash
其实根据上面的定义来讲,下面的才是正确的。因为如果没有 host 的话,第一个 [] 的内容就不应该存在了啊。
file:/ad/cash
这种统一的写法也有个标准,叫CURIE[2]。
其实最开始的那个 / 也是可以不要的呢,就看你是不是表示的是绝对地址了,一般来说都是用的绝对地址。
Reference:[1] Uniform Resource Identifier
[2] http://www.w3.org/TR/curie/
作者:钟宇腾
链接:https://www.zhihu.com/question/37063799/answer/70242462
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
相关文章
- C# 下载PDF文件(http与ftp)
- 编程体系结构(04):JavaIO流文件管理
- android开发步步为营之67:使用android开源项目android-async-http异步下载文件
- PyCharm使用技巧:Compare With(文件比较工具)
- 什么是平面文件数据库? 如何导入多种格式的文件:DSV、JSON、XML?
- http协议传送文件的问题
- ubuntu下搭建http文件服务器
- 【C-文件操作】一文教你如何将代码的数据持久化
- 错误提示:通过 Web 服务器的身份验证的用户无权打开文件系统上的文件
- HTTP 304 错误码,下载文件当文件没有发生改变时会返回改错吗
- CentOS 6.5 搭建NFS文件服务器
- 浅析PM2的十个实用功能:自动保存、自定义日志文件、设置内存限制、查看进程信息详细、监控所有进程、使用SourceMap定位错误位置、监听目录文件变化自动重启、4种失败重启策略(零延迟高可用)、命名空间对服务归类、内置http服务器
- 浅析Nginx常用配置:如何根据user-agent适配PC/移动设备、如何配置https、如何开启静态服务、如何设置图片防盗链、如何配置请求过滤、如何配置静态文件的缓存时间、如何配置http转发到https、如何配置泛域名路径分离及泛域名转发
- java http大文件上传,断点续传项目研究,Github上传源代码
- umask 文件预设权限掩码
- matlab中m文件与m函数的学习与理解
- [CareerCup] 11.4 Sort the File 文件排序
- Mac 基于HTTP方式访问下载共享文件
- Django之静态文件(十九)
- C++实现遍历指定文件或文件夹
- 如何将pyqt的ui文件生成py代码【vscode】