解析HTTP

一、概述
[color=darkblue][b]HTTP[/b][/color],超文本传输协议,应用层的协议,是基于请求/响应模式的、无状态的协议。客服端与服务端建立连接后,向服务器发送一个请求,服务器对这个请求进行处理,然后返回一个响应信息,之后双方的连接关闭(HTTP1.1版本支持持续连接,而且客服端可连续发送多个请求,不用等待每一个响应的到来)。

二、HTTP请求
客服端通过发送HTTP请求向服务器请求对资源的访问。HTTP请求由三部分构成,分别是:请求行,消息报头和请求正文。
1、请求行
请求行格式:Method Request-URI HTTP-VERSION CRLF
如:GET /form.html HTTP/1.1 (CRLF)

METHOD:[GET|POST|HEAD|PUT|DELETE|TRACE|CONNECT|OPTIONS]
GET:主要用于获取由Request-URI所标识的资源的信息。
POST:主要用于向目的服务器发出请求,要求服务器接受附在后面的数据。
HEAD:与GET方法几乎是相同的,区别在于HEAD方法只请求消息报头。

2、消息报头(略)
HTTP消息报头包括普通报头、请求报头、响应报头、实体报头。
每个报头域都是由名字+“:”+空格+值组成。
常用的普通报头:Cache-Control、Date、Connection、Pragrma等。

常用的请求报头:Accept、Accept-Charset、Accept-Encoding、Accept-language、Authorization、Host(指定被请求的Internet主机和端口号)、User-Agent等。

常用的响应报头:Location、Server、WWW-Authenticate等。

常用的实体报头:Content-Encoding、Content-Language、Content-Length、Content-Type、Expires、Last-Modified等。

3、请求正文
请求正文包含提交的数据,例如:user=sailor&pwd=1234

三、HTTP响应
在接收完和解释请求后,服务器会返回一个HTTP响应消息,响应也有三部分组成,分别是:状态行,消息报文和响应正文。
1、状态行
响应行格式:HTTP-Version Statuss-Code Reason-Phrase CRLF
如:HTTP/1.1 200 OK (CRLF)
Status-Code:表示服务器发回的响应代码。
Reason-Phrase:表示状态代码的文本描述。

状态代码由三位数字组成,状态代码的第一位数字定义了响应的类别,第一位数有5种取值。
> 1xx:提示信息
> 2xx:成功
> 3xx:重定向
> 4xx:客服端错误
> 5xx:服务器端错误

2、消息报头(略)

3、响应正文
响应正文就是服务器返回的资源(也即网页的源代码)。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值