HTTP 请求 URLHTTP 协议使用 URI 定位互联网上的资源 。 正是因为 URI 的特定功能,在互联网上任意位置的资源都能访问到 。 URL 带有请求对象的标识符 。 在上面的例子中,浏览器正在请求对象 /somedir/page.html 的资源 。
我们再通过一个完整的域名解析一下 URL
比如 http://www.example.com:80/path/to/myfile.html?key1=value1&key2=value2#SomewhereInTheDocument 这个 URL 比较繁琐了吧,你把这个 URL 搞懂了其他的 URL 也就不成问题了 。
首先出场的是 http
http://告诉浏览器使用何种协议 。 对于大部分 Web 资源,通常使用 HTTP 协议或其安全版本,HTTPS 协议 。 另外,浏览器也知道如何处理其他协议 。 例如, mailto: 协议指示浏览器打开邮件客户端;ftp:协议指示浏览器处理文件传输 。
第二个出场的是 主机
www.example.com 既是一个域名,也代表管理该域名的机构 。 它指示了需要向网络上的哪一台主机发起请求 。 当然,也可以直接向主机的 IP address 地址发起请求 。 但直接使用 IP 地址的场景并不常见 。
第三个出场的是 端口
我们前面说到,两个主机之间要发起 TCP 连接需要两个条件,主机 + 端口 。 它表示用于访问 Web 服务器上资源的入口 。 如果访问的该 Web 服务器使用HTTP协议的标准端口(HTTP为80,HTTPS为443)授予对其资源的访问权限,则通常省略此部分 。 否则端口就是 URI 必须的部分 。
上面是请求 URL 所必须包含的部分,下面就是 URL 具体请求资源路径
第四个出场的是 路径
/path/to/myfile.html 是 Web 服务器上资源的路径 。 以端口后面的第一个 / 开始,到 ? 号之前结束,中间的 每一个/ 都代表了层级(上下级)关系 。 这个 URL 的请求资源是一个 html 页面 。
紧跟着路径后面的是 查询参数
?key1=value1&key2=value2 是提供给 Web 服务器的额外参数 。 如果是 GET 请求,一般带有请求 URL 参数,如果是 POST 请求,则不会在路径后面直接加参数 。 这些参数是用 & 符号分隔的键/值对列表 。 key1 = value1 是第一对,key2 = value2 是第二对参数
紧跟着参数的是锚点
#SomewhereInTheDocument 是资源本身的某一部分的一个锚点 。 锚点代表资源内的一种“书签”,它给予浏览器显示位于该“加书签”点的内容的指示 。 例如,在HTML文档上,浏览器将滚动到定义锚点的那个点上;在视频或音频文档上,浏览器将转到锚点代表的那个时间 。 值得注意的是 # 号后面的部分,也称为片段标识符,永远不会与请求一起发送到服务器 。
HTTP 版本表示报文使用的 HTTP 协议版本 。
请求头部这部分内容只是大致介绍一下,内容较多,后面会再以一篇文章详述
在表述完了起始行之后我们再来看一下请求头部,现在我们向上找,找到http://www.someSchool.edu/someDepartment/home.index,来看一下它的请求头部
Host: www.someschool.eduConnection: closeUser-agent: Mozilla/5.0Accept-language: fr
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 香肠派对万圣节有什么武器皮肤-万圣节全新武器皮肤一览让您无可匹敌
- 这些都是发财手相图,看看你有没有
- 这么好的赌运手相看看你有没有
- 和平精英双弹夹bug怎么卡?和平精英卡双弹夹bug图文教程让您百战百胜
- 怎么让一个女生喜欢上你
- 如何让女人对自己死心塌地
- DNF手游鬼剑士体验视频 鬼剑士技能高度还原让您技能天下无双
- 怎么样让皮肤变白(皮肤暗淡怎么变白)
- dnf手游鬼泣加点 dnf手游鬼泣最佳加点方案让您无可匹敌
- 几种富贵命面相你有吗