简单理解HTTP协议
HTTP (HyperText Transfer Protocol) 超文本传输协议,用于传输html页面。
HTTP协议是非常常见的通信协议,主要用于服务器和客户端的html传输。
HTTP请求
请求行、请求报头、请求正文
请求行:Method Request-URI HTTP-Version CRLF
Method 方法
GET 请求获取Request-URI所标识的资源
POST 在Request-URI所标识的资源后附加新的数据
HEAD 请求获取由Request-URI所标识的资源的响应消息报头
PUT 请求服务器存储一个资源,并用Request-URI作为其标识
DELETE 请求服务器删除Request-URI所标识的资源
TRACE 请求服务器回送收到的请求信息,主要用于测试或诊断
CONNECT 保留将来使用
OPTIONS 请求查询服务器的性能,或者查询与资源相关的选项和需求
Request-URL 统一资源标识符
HTTP-Version 请求的HTTP协议版本
CRLF 回车和换行
HTTP响应
状态行、消息报头、响应正文
状态行:HTTP-Version Status-Code Reason-Phrase CRLF
HTTP-Version 服务器HTTP协议的版本
Status-Code 服务器发回的响应状态代码
状态码:
1xx:指示信息--表示请求已接收,继续处理
2xx:成功--表示请求已被成功接收、理解、接受
3xx:重定向--要完成请求必须进行更进一步的操作
4xx:客户端错误--请求有语法错误或请求无法实现
5xx:服务器端错误--服务器未能实现合法的请求
Reason-Phrase 状态代码的文本描述
CRLF 回车和换行
响应正文:服务器返回的资源的内容
实例
客户端请求:
GET / HTTP/1.1
Host: www.google.com
服务器响应:
HTTP/1.1 200 OK
Content-Length: 3059
Server: GWS/2.0
Date: Sat, 11 Jan 2003 02:44:04 GMT
Content-Type: text/html
Cache-control: private
Set-Cookie: PREF=ID=73d4aef52e57bae9:TM=1042253044:LM=1042253044:S=SMCc_HRPCQiqy
X9j; expires=Sun, 17-Jan-2038 19:14:07 GMT; path=/; domain=.google.com
Connection: keep-alive
(实例实在wiki里抄的)