HTTP笔记(二)HTTP协议的通信

本文详细介绍了HTTP协议中客户端与服务器之间的通信过程,包括请求和响应的步骤。客户端通过HTTP方法(如GET)发起请求,指定请求URI,并携带HTTP版本号。服务器接收到请求后,返回HTTP响应,包含状态码(如200 OK)及响应首部和实体主体。

客户端和服务器之间的通信

HTTP协议和TCP/IP协议族内的其他众多的协议相同,用于客户端和服务器之间的通信。
客户端:请求访问文本或图像等资源的一端称为客户端。
服务端:提供资源响应的一端。

请求和响应

HTTP协议规定,请求有客户端发出,最后服务器响应该请求并返回。
1.发送请求

GET / HTTP/1.1
Host: www.xxx.com

2.发送响应

HTTP/1.1 200 OK
Date: Tue, 10 Jul 2015 06:50:15 GMT
Content-Length: 362
Content-Type: text/html

下面是个请求报文例子:

GET /index.htm HTTP/1.1
Host: www.xxx.com

起头的GET表示请求访问服务器的类型,称为方法(method)。随后字符串index.htm指明了请求访问的资源对象,也叫做请求URI(request-URI)。最后的HTTP/1.1,即HTTP的版本号,用来提示客户端使用的HTTP协议功能。
请求报文是有请求方法、请求URI、协议版本、可选的请求首部字段和内容实体构成。

POST(method) /index.htm(URI) HTTP/1.1(协议版本)
------------------------------------------------------
(实体)
Host: www.xxx.com
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Content-Length: 310
------------------------------------------------------
(内容实体)
userId=3076&name=leo

在服务器接收到请求报文后,经过处理以响应报文的形式返回。

HTTP/1.1 200 OK
Date: Tue, 10 Jul 2015 16:50:15 GMT
Content-Length: 362
Content-Type: text/html

<html>
......
</html>

起头的HTTP/1.1表示表示服务器对应的HTTP版本。
200 OK表示服务器处理结果的状态吗(status code)和原因短语(reason-phrase)。下一行显示了创建响应的日期时间,是首部字段(header field)内的一个属性。
接着空一行分隔,之后内容为资源实体的主体(enity body)。
响应报文基本上有协议版本、状态码(表示请求成功或者失败的数字代码)、用以解释状态吗的原因短语、可选的响应首部字段以及实体主体构成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值