第二章 简单的http协议
1.HTTP协议规定,请求从客户端发出,最后服务器端响应该请求并返回。换句话说,肯定是先从客户端开始建立通信的,服务器端在没有接收到请求之前不会发送响应。
2.URI请求报文是由请求方法、请求URI、协议版本、可选的请求首部字段和内容实体构成的。
3.响应报文基本上由协议版本、状态码(表示请求成功或失败的数字代码)、用以解释状态码的原因短语、可选的响应首部字段以及实体主体构成。
4.告知服务器意图的http方法:
get用来请求访问已被uri识别的资源
post方法用来传输实体的主体,主要目的不是获取相应的主体内容
put传输文件
head获得报文首部和get方法一样,只是不返回报文主体部分。用于确认URI的有效性及资源更新的日期时间等
delete删除文件
options询问支持的方法
trace追踪路径
connect要求用隧道协议连接代理(ssl安全套接层和tls传输层安全)
5.使用cookie的状态管理
第三章 http报文内的http信息
1.用于http协议交互的信息称为http报文,分为请求报文和相应报文,http报文本身是由多行数据构成的字符串文本。
http报文可分为报文手不停和报文主体两部分。
2.报文主体和实体主体的差异
报文(message)
是http通信的基本单位,由八位字节流组成,通过http通信传输。
实体(entity)
作为请求或响应的有效载荷数据被传输,内容由实体首部和实体主体组成。
http报文主体用于传输请求或响应的实体主体。
第四章 返回结果的http状态码
1.状态码类别
200 ok 请求正常处理
204 no content 请求处理成功,没有资源返回
206 partial content 部分请求 相应报文由content-range指定范围的实体内容
301 moved permanently URI
永久性重定向。该状态码表示请求的资源已被分配了新的URI,以后应使用资源现在所指的URI。也就是说,如果已经把资源对应的URI保存为书签了,这时应该按Location首部字段提示的URI重新保存。
302 found
临时性重定向。该状态码表示请求的资源已被分配了新的URI,希望用户(本次)能使用新的URI访问
303 see other
该状态码表示由于请求对应的资源存在着另一个
URI,应使用GET方法定向获取请求的资源。
304 not modified
该状态码表示客户端发送附带条件的请求时,服务器端允许请求访问资源,但未满足条件的情况。304状态码返回时,不包含任何响应。304的主体部分虽然被划分在3XX类别中,但是和重定向没有关系。
307 temporary redirect
临时重定向。该状态码与302 Found有着相同的含义。尽管标准302禁止POST变换成GET,但实际使用时大家并不遵守。
307会遵照浏览器标准,不会从POST变成GET。但是,对于处理响应时的行为,每种浏览器有可能出现不同的情况。
400 bad request
请求报文中存在语法错误
401 unauthorized
该状态码表示发送的请求需要通过http认证的认证信息
403 forbidden
表明对请求资源的访问被服务器拒绝了
404 not found
表明服务器上无法找到请求的资源
500 internal server error
表明服务器端执行请求时发生了错误
503 service unavailable
表明服务器暂时处于超负载或正在进行停机维护,现在无法处理请求。