URL和URI

URI

全称为(Uniform Resource Identifier), 也就是统一资源标识符,它的作用很简单,就是区分互联网上不同的资源。
URL和URI

例子:http://user:pass@www.example.jp:80/dir/index.html?uid=1#ch1

协议方案名http: 》登录信息user:pass》 服务器地址www.example.jp 》服务器端口号》80》带层次文件路径/dir/index.html》查询字符串uid=1》片段标识符#ch1

可能你会有疑问,好像跟平时见到的不太一样啊!先别急,我们来一一拆解。

scheme 表示协议名,比如http, https, file等等。后面必须和://连在一起。

user:passwd@ 表示登录主机时的用户信息,不过很不安全,不推荐使用,也不常用。

host:port表示主机名和端口。

path表示请求路径,标记资源所在位置。

query表示查询参数,为key=val这种形式,多个键值对之间用&隔开。

fragment表示 URI 所定位的资源内的一个锚点,浏览器可以根据这个锚点跳转到对应的位置。

URI编码只能用ASCII,ascii之外的字符不支持,而且还有一部分符号是界定符,如果不加以处理就会导致解析出错。

URL

URL是URI的一个子集。它是Uniform Resource Locator的缩写,译为“统一资源定位 符”

URN

URN也是URI的一个子集uniform resource name,统一资源命名

URI和URL区别

URI是一种语义上的抽象概念,可以是绝对的,也可以是相对的,而URL则必须提供足够的信息来定位,所以,是绝对的,而通常说的relative URL,则是针对另一个absolute URL,本质上还是绝对的。

上一篇:URL、URI、URN的区别


下一篇:2020Android高级开发面试题以及答案整理,持续更新中~,android开发技术基础