《图解HTTP》学习记录三(URI与URL)

URI(Uniform Resource Identifier)和URL(Uniform Resource Locator)这两个概念在前面的学习中出现了很多次,但我一直没有理清两者的差别,现在来好好聊一聊。

URI是根据某个协议方案表示的资源定位符,协议方案指的是访问资源所访问的协议类别,http就是其中一种协议,此外,标准协议还有ftp,mailto,telnet,file等30多种。

URI和URL的差别在于identifer和locator上,identifer意为标记,即告诉你有这么一个东西名字叫做什么。而locator意为查询地址,它不仅能告诉你有一个东西叫什么,还能精确定位到具体位置。所以,URL是URI的子集,URI是以一种抽象的,高层次概念定义统一资源标识,而URL和URN则是具体的资源标识的方式。URI的子集除了URL以外,还有URN(Uniform Resource Name),但是并未大规模的应用场景。

所以,用URL来替代URI是毫无问题的。这是一个标准的URL结构:

  • 协议方案名:http,ftp,file,mailto.....;
  • 登录信息:如果网页需要认证时,需要填写该参数,所以是可选项。实际上,这种登录方式基本上不用,把账号密码写在URL不是等着别人来盗用么- -;
  • 服务器地址:可以使IP地址形式,也可以是能被DNS解析为IP地址的域名形式;
  • 端口号:指定服务器连接的端口号,也选填,若不填则指向本协议的默认端口号;
  • 带层次的文件路径:获取资源在服务器中的具体地址;
  • 查询字符串:针对已指定路径的资源,可使用查询字符串来获取想要的参数,此项也是可选项;
  • 片段标识符:又名hash,来标记已获取资源中的子资源(在文档中的某个位置)。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • (原话)谈谈对HTTP协议的理解:超文本传输协议,应用于OSI网络模型中的应用层,是用于服务器传输超文本到本地浏览...
    24_yu阅读 933评论 0 1
  • HTTP简介HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于...
    加油码农阅读 747评论 0 1
  • HTTP简介 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用...
    DCbryant阅读 203评论 0 0
  • HTTP 简介 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是...
    Gundy_阅读 215评论 0 5
  • 박승욱白承旭,은종학殷鐘鹤,하시다 마사하루 菱田雅晴,아오야마 루미 青山瑠妙,윤경우尹炅雨,마루카와 丸川知雄...
    0dcc3edb06d4阅读 156评论 0 0