e621小马 e621( 二 )


URL的全称是(Uniform Resource Locator),中文名称是统一资源定位符,也就是我们俗称的网址,它实际上是 URI 的一个子集 。

e621小马  e621

文章插图
HTTP报文起始行(start line):描述请求或响应的基本信息;头部字段(header):使用 key-value 形式更详细地说明报文;消息正文(entity):实际传输的数据,它不一定是纯文本,可以是图片、视频等二进制数据 。起始行和头部字段并成为 请求头 或者 响应头,统称为 Header;消息正文也叫做实体,称为 body 。HTTP 协议规定每次发送的报文必须要有 Header,但是可以没有 body,在 header 和 body 之间必须要有一个空行(CRLF) 。
e621小马  e621

文章插图
举个例子:http://www.someSchool.edu/someDepartment/home.index 请求的请求头:
e621小马  e621

文章插图
报文的起始行都是由三个字段组成: *** 、URL 字段和 HTTP 版本字段 。
e621小马  e621

文章插图
HTTP 请求 *** GET 获取资源,GET*** 用来请求访问已被 URI 识别的资源 。指定的资源经服务器端解析后返回响应内容 。POST 传输实体,使用 POST 传输实体信息,提交表格内容 。PUT 传输文件,PUT*** 用来传输文件 。就像 FTP 协议的文件上传一样,要求在请求报文的主体中包含文件内容,然后保存到请求 URI 指定的位置 。但是,鉴于 HTTP 的 PUT*** 自身不带验证机制,任何人都可以上传文件 , 存在安全性问题,因此一般的 W eb 网站不使用该 ***。若配合 W eb 应用程序的验证机制,或架构设计采用REST(REpresentational State Transfer,表征状态转移)标准的同类 Web 网站,就可能会***使用 PUT***。HEAD 获得响应首部,HEAD*** 和 GET*** 一样,只是不返回报文主体部分 。用于确认 URI 的有效性及资源更新的日期时间等 。DELETE 删除文件,DELETE*** 用来删除文件,是与 PUT 相反的 ***。DELETE*** 按请求 URI 删除指定的资源 。OPTIONS 询问支持的 *** ,OPTIONS*** 用来查询针对请求 URI 指定的资源支持的 ***。TRACE 追踪路径,TRACE*** 是让 Web 服务器端将之前的请求通信环回给客户端的 ***。CONNECT 要求用隧道协议连接 *** ,CONNECT*** 要求在与 *** 服务器通信时建立隧道,实现用隧道协议进行 TCP 通信 。主要使用 SSL(Secure Sockets Layer,安 *** 接层)和 TLS(Transport Layer Security,传输层安全)协议把通信内容加 密后经 *** 隧道传输 。一般最常用的 *** 也就是 GET*** 和 POST*** ,其他 *** 暂时了解即可 。
HTTP 请求 URL完整的域名解析一下 URL:http://www.example.com:80/path/to/myfile.html?key1=value1&key2=value2#SomewhereInTheDocument
http://告诉浏览器使用何种协议 。www.example.com 是域名、主机,指示了需要向 *** 上的哪一台主机发起请求 。也可以直接向主机的ip发起请求 。端口 两个主机之间要发起 TCP 连接需要两个条件,主机 + 端口,表示用于访问 Web 服务器上资源的入口,如果访问的该 Web 服务器使用HTTP协议的标准端口(HTTP为80,HTTPS为443)授予对其资源的访问权限,则通常省略此部分 。否则端口就是 URI 必须的部分 。路径 /path/to/myfile.html 是 Web 服务器上资源的路径 。以端口后面的之一个 / 开始,到 ? 号之前结束,中间的 每一个/ 都代表了层级(上下级)关系 。查询参数?key1=value1&key2=value2 是提供给 Web 服务器的额外参数 。如果是 GET 请求,一般带有请求 URL 参数,如果是 POST 请求,则不会在路径后面直接加参数 。
锚点 #SomewhereInTheDocument 是资源本身的某一部分的一个锚点 。锚点代表资源内的一种“书签” 。请求头部比如http://www.someSchool.edu/someDepartment/home.index,来看一下它的请求头部
Host: www.someschool.eduConnection: closeUser-agent: Mozilla/5.0Accept-language: fr复制代码Host :表示的是对象所在的主机Connection: close 表示的是浏览器需要告诉服务器使用的是非持久连接 。它要求服务器在发送完响应的对象后就关闭连接 。User-agent: 这是请求头用来告诉 Web 服务器,浏览器使用的类型是 Mozilla/5.0,即 Firefox 浏览器 。Accept-language 告诉 Web 服务器,浏览器想要得到对象的法语版本 。HTTP 的请求标头分为四种: 通用标头、请求标头、响应标头 和 实体标头
通用标头通用标头主要有三个,分别是 Date、Cache-Control 和 Connection Date
Date 出现在请求标头和响应标头中,它的基本表示如下
Date: Wed, 21 Oct 2015 07:28:00 GMT 复制代码Cache-Control

推荐阅读