请求与响应
请求
(一)请求行
- 请求方法:
GET, POST, HEAD, PUT, TRACE, DELETE, OPTION,
这些方法时http协议允许的,但web服务器不一定支持所有这些方法;- OPTIONS:返回服务器针对特定资源所支持的HTTP请求方法。也可以利用向Web服务器发送’*'的请求来测试服务器的功能性。
- HEAD:向服务器索要与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以在不必传输整个响应内容的情况下,就可以获取包含在响应消息头中的元信息。
- GET:向特定的资源发出请求。
- POST:向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的创建和/或已有资源的修改。
- PUT:向指定资源位置上传其最新内容。
- DELETE:请求服务器删除 Request-URI 所标识的资源。
- TRACE:回显服务器收到的请求,主要用于测试或诊断。
- CONNECT:HTTP/1.1 协议中预留给能够将连接改为管道方式的代理服务器。
虽然 HTTP 的请求方式有 8 种,但是我们在实际应用中常用的也就是 get 和 post,其他请求方式也都可以通过这两种方式间接的来实现。
- 请求路径
- 协议版本
(二)请求头信息
- 头信息格式: 键值对形式
(三)请求主体信息(可选)
- 要发送的内容
示例:
POST /dir/. HTTP/1.1 #请求行:请求方法、请求路径、协议版本
Host: localhost #头信息,键为Host;值为localhost
content-type: *** #头信息,键为content-type;值为***
content-length: 5 #头信息,键为content-length;值为5
#头信息和主体信息之间空一行
Age=3 #主体信息
响应
(一)响应行
- 协议版本
- **响应状态码:**反映服务器响应情况,例如:200 OK, 404 NOT FOUND
- 响应状态文字
(二)响应头信息
- 头信息格式: 键值对形式
(三)响应主体信息
-主体信息(可选)
示例:
HTTP/1.1 200 OK #响应行:协议版本、响应状态码、响应状态文字
content-type: text/html
content-length: 5
hello #主体信息
响应状态码对照表: