HTTP报文头部字段信息

HTTP请求:

报文段如下:

GET  http://www.baidu.com/index.html   HTTP/1.0   //目标资源的url  index.html表示指定资源文件的名称  HTTP/1.0表示客户端使用的版本号

User-Agent :Wget/1.12  (linux-gnu)  //表示客户端使用的程序是Wget

Host : www.baidu.com  //表示目标主机名(HTTP请求中必须包含的头部字段)

Connection : close  //我们执行wget命令时传入的

close告诉服务器,处理完这个HTTP报文就关闭连接(服务器主动关闭的),下次即使同一个客户与服务器想要发送报文,也需要重新建立TCP连接。这称为短连接;如果是keep-alive字段,就表示同一用户的多个请求可以使用同一个TCP连接,称之为长连接。长连接能有效减少网络为建立TCP连接而导致的负荷,同时对每次请求而言缩短了处理时间。

第一行是请求行,GET是请求方法,表示客户端以只读的方式来申请资源,常见的HTTP请求的方法有九种,如下:

请求方法 含义
GET 申请获取资源而不对服务器产生任何影响
HEAD 与GET方法类似,不过只要求服务器返回头部信息,而不需要传输任何实际内容
POST 客户端向服务器提交数据的方法。这种方法会影响服务器,服务器可能根据收到的数据动态创建新的资源,也可能更新原有的资源
PUT 上传某个资源
DELETE 删除某个资源
TRACE 要求目标服务器返回原始HTTP请求的内容,它可以用来查看中间服务器对HTTP请求的影响
OPTIONS 查看服务器对特定url都支持哪些请求方法,也可以把url设置为*,从而获得服务器支持的所有方法
CONNECT 用于某些代理服务器,他们能把请求的连接转化为一个安全隧道。
PATCH 对某个资源做部分修改

   对于不对服务器做修改而只是从服务器获取资源或信息的方法,我们  可以将其视为安全的方法 ,有HEAD,GET,OPTIONS和TRACE。

   在所有的头部字段之后,HTTP必须包含一个空行,以标识头部  字  段的结束。请求行和每个头部字段中必须以<CR><LF>结束(回车符和换行符);而空行必须只包含一个<CR><LF>,不能有其他字符,也不能有空白字符。

在空行之后,HTTP协议可以包含可选的消息体。

扫描二维码关注公众号,回复: 5621346 查看本文章

HTTP应答:

HTTP应答报文如下:

 cookie是服务器发送给客户端的特殊信息,使得保持HTTP连接状态。

应答状态码如下:

在所有的头部字段之后,HTTP应答必须包含一个空行,以标识头部字段的结束。请求行和每个头部字段中必须以<CR><LF>结束(回车符和换行符);而空行必须只包含一个<CR><LF>,不能有其他字符,也不能有空白字符。

在空行之后是被请求文档的内容。

猜你喜欢

转载自blog.csdn.net/shang_12266029/article/details/88563749
今日推荐