1.HTTP请求 首行方法
GET | 获取资源(浏览器输入url获取服务器某个资源) |
POST | 传输实体主体(常见登录页面,提交用户输入的数据给服务器) |
PUT | 传输文件 |
HEAD | 获取报文首部 |
DELETE | 删除文件 |
2.GET和POST的区别(其他方法不常用)
- 语义不同:GET常用来获取数据,POST常用提交数据
- 使用习惯不同:GET 报文 body一般为空,通过url中的query string传输数据,POST query string 一般为空 ,通过body传输数据
- GET请求时幂等的,POST请求不是幂等的(一般情况下,有例外) (幂等:多次请求得到的结果一样 )(例如 APP网站首页根据用户的喜好展示页面内容,每刷新后,展示的又不一样,就是不幂等的)
- GET 请求可以缓存 POST不缓存(幂等的延续)
3.报头Header
每个键值对占一行
- host:表示服务器主机地址和端口
- 一些键值对; content length :body长度 content type:数据格式( 请求 常见格式 :json,form表单,form -data 响应常见格式:html,css,js...) User-Agent(UA):描述了操作系统和浏览器的版本 Referer:表示当前页面是从那个页面跳转来的 Cookie:浏览器在本地存储数据的一种机制(程序运行时,一些临时性的数据(例如:上次访问时间,用户身份信息..)需要在浏览器上存储,后续请求时再把数据发送给服务器 cookie按照域名存储到浏览器的主机硬盘上)
HTTP 响应报文
4.状态码:表示请求对应的响应是什么状态
200 | OK | 表示页面访问成功 |
302 | Move temporanily重定向 | 页面跳转(某个网站服务器IP改变了)请求访问A地址,响应告诉你应该访问B地址 |
404 | Not Found | 请求访问的资源在服务器上不存在 |
500 | Internal Server Error | 服务器内部出现错误 |
403 | Forbidden | 访问被拒绝,需要用用户权限 |
405 | Method Not Allowed | 不支持该方法 |
504 | Gateway Timeout | 超时 |