HTTP 协议中 URI、URL、URN
1 URI
URI:(Uniform Resource Identifier),统一资源标识符,是一个用于标识某一互联网资
源名称的字符串。URL 和 URN 都是 URI 的子集。举个栗子:
<a href="mailto:xxx@qq.com">发送邮件</a>
URI 是个纯粹的句法结构,用于指定标识 Web 资源的字符串的各个不同部分。他不属于定位符,因为根据该标识符无法定位任何资源。
2 URL
URL(Uniform Resource Location 统一资源定位符),可以帮助我们唯一定位互联网上的某一个
资源,相当于是互联网资源的身份证号。URL 的五个元素包括在一个简单的地址中:
- 传送协议。
- 服务器。(通常为域名或者 IP 地址)
- 端口号。(以数字方式表示,若为 HTTP 的默认值“:80”可省略)
- 请求资源路径。
- 传递数据。(在 URL 中传递数据是以 key=value 的结构进行数据绑定,以“?”字符为起点,每个参数以“&”隔开,再以“=”分开参数名称与数据,通常以 UTF8 的 URL 编码,避开字符冲突的问题)
举个栗子:
http://www.csdn.net:80/course/id/18.html?a=3&b=4
其中:
1. http, 是协议;
2. www.csdn.net,是服务器域名;
3. 80,是服务器上的默认网络端口号,默认不显示;
4. /course/id/18.html,是路径(URI:直接定位到对应的资源);
5. ?a=3&b=4,请求时传递的数据;
3 URN
URN(Uniform Resource Name,统一资源名称),其目的是通过提供一种途径,用于在特定的命名空间资源的标识,以补充网址。
举个栗子:
URN 是 URI 的子集,包括名字(给定的命名空间内),但是不包括访问方式来。