HTTP
2019-01-15 本文已影响0人
简栋梁
一、架构与HTTP的关系
1、webservice = http + xml
2、rest = http + json
二、协议
一式多份的合同,多方达成共识。
三、GET方法格式
GET 相对url HTTP/版本号——请求行
Host:虚拟目录(根目录)——请求头信息
(空行,必须)
(请求主体,可选)
四、POST方法格式
POST 相对url HTTP/版本号——请求行
Host:虚拟目录(根目录)————————————
Content-type: application/x-www-form-urlencoded——————请求头信息
Content-type: (num)————————————————
(空行,必须)
(请求主体,可选但一般都有)
五、响应部分:
HTTP/版本号 状态码 状态文字——响应行
Date:(date)——————————————————
(n个键值对)————————————————————————响应主体
Content-Length: (num)———————————————
Content-Type: text/html———————————————
(空行)
(响应内容,正文部分)
六、各种请求方法的作用
方法 | 作用 |
---|---|
GET | 喊人请求内容 |
POST | 伸手请求内容 |
HEAD | 查看某内容是否已加载,无需服务器重新发送该内容 |
TRACE | 追踪请求方法是否被改变(用于代理上网的情况) |
OPTIONS | 请求内容为:某服务器所允许使用的请求方法 |
七、状态码
方法 | 作用 |
---|---|
1xx | 成功,允许有后续操作 |
2xx | 成功 |
3xx | 成功,但结果会与预期不同 |
4xx | 客户端出错 |
5xx | 服务端出错 |
常见例子
方法 | 作用 |
---|---|
200 | 服务器成功返回资源 |
301/302 | 永久/临时重定向,跳转网页 |
304 | 资源已加载,且未修改,无需重新加载 |
307 | 携带数据一起跳转网页 |
404 | 请求资源不存在,请另寻他路 |
503 | 服务器不可用 |
500 | 服务器内部错误 |