Closed sailei1 closed 5 years ago
URI不完全等同于网址,它包含有URL和URN两个部分,在HTTP世界里用的网址实际上是URL ——统一资源定位符(Uniform Resource Locator)。但因为URL实在是太普及了,所以常常把这两者简单 地视为相等。
URI常用的形式:
scheme :// host:port path ? query
scheme:协议名 host:port 资源所在主机名,地址+端口,如果不写端口,浏览器使用默认的端口 path:资源所在位置,必须以“/”开始 query: 查询参数,以“?”开始,但不包含“?”。key=value字符串,用&连接 eg: https://search.jd.com/Search?keyword=openresty&enc=utf-8&qrst=1&rt=1&stop=1&vt=2&wq=openres ty&psort=3&click=0
URI的完整格式 scheme :// user:passwd@ host:port path ? query #fragment User:passwd@ : 身份信息,但是不推荐这样使用,泄露重要信息
URI的编码 在URI里只能使用ASCII码,直接把非ASCII 码或特殊字符转换成十六进制字节值,然后前面加一个“%”,中文、日文等通常使用UTF-8编码后再转义。
URI不完全等同于网址,它包含有URL和URN两个部分,在HTTP世界里用的网址实际上是URL ——统一资源定位符(Uniform Resource Locator)。但因为URL实在是太普及了,所以常常把这两者简单 地视为相等。
URI常用的形式:
scheme :// host:port path ? query
scheme:协议名 host:port 资源所在主机名,地址+端口,如果不写端口,浏览器使用默认的端口 path:资源所在位置,必须以“/”开始 query: 查询参数,以“?”开始,但不包含“?”。key=value字符串,用&连接 eg: https://search.jd.com/Search?keyword=openresty&enc=utf-8&qrst=1&rt=1&stop=1&vt=2&wq=openres ty&psort=3&click=0
URI的完整格式 scheme :// user:passwd@ host:port path ? query #fragment User:passwd@ : 身份信息,但是不推荐这样使用,泄露重要信息
fragment :片段标识符。标识URI所定位的资源内部的一个锚点,浏览器可以跳转到它指示的位置。服 务器看不到#fragment
URI的编码 在URI里只能使用ASCII码,直接把非ASCII 码或特殊字符转换成十六进制字节值,然后前面加一个“%”,中文、日文等通常使用UTF-8编码后再转义。