HTTP协议
1.HTTP协议的主要特点
2.HTTP报文的组成部分
3.HTTP方法
4.POST和GET的区别
5.HTTP状态码
6.什么是持久连接
7.什么是管线化
https://segmentfault.com/a/1190000007033157
HTTP协议的主要特点
- 简单快速
- 灵活
- 无连接(连一次就会断,不会保持连接)
- 无状态(客户端和服务端,两种服务端不能区分两次连接者的身份)
HTTP报文的组成部分
- 请求报文
- 请求行--->包含http方法,页面地址,http协议以及版本
- 请求头--->key,value告诉服务端要什么
- 空行------>告诉服务端往下解析
- 请求体
- 响应报文
- 状态行
- 响应头
- 空行
- 响应体
HTTP方法
1.GET---------->获取资源
2.POST-------->传输资源
3.PUT---------->更新资源
4.DELETE---->删除资源(用的少)
5.HEAD-------->获得报文首部
POST和GET的区别
1.GET在浏览器回退时是无害的,而POST会再次提交申请
2.GET产生的URL地址可以被收藏,而POST不行
3.GET请求会被浏览器主动缓存,而POST不会,除非手动设置
4.GET请求参数会被完整保留在浏览器历史记录中,而POST参数不会被保留
5.GET请求在URL中传送的参数是有长度限制的,而POST没有
6.GET参数通过URL传递,POST放在Request body中
7.GET只接受ASCII字符,POST无限制
8.GET比POST更不安全,因为参数直接暴露在URL中,所有不能用来传递敏感信息。
HTTP状态码
1xx:指示信息---表示请求已接收,继续处理
2xx:成功---表示请求已被成功接收
3xx:重定向---要完成请求必须进行更进一步的操作
4xx:客户端错误---请求有语法错误或请求无法实现
5xx:服务器错误---服务器未能实现合法的请求
- 常见的状态码
200 ok---------------客服端请求成功
206 Partial Content------客户发送一个带有Range头的GET请求,服务器完成了它
301 Moved Permanently-------所请求的页面已经转移至新的URL
302 Found---------所请求的页面已经临时转移至新的URL
304 Not Modified-------客服端有缓存的文档并发出了一个条件性的请求,服务器告诉客服,原来缓存的文档还可以继续使用
400 Bad Request -----客户端请求有语法错误,不能被服务器理解
401 Unauthorized -----请求未经授权,这个状态码必须和www-Authenticate报头域一起使用
403 Forbidden---------对页面的访问被禁止
404 Not Found------请求资源不存在
500 Internal Server Error ---------服务器发生不可预期的错误,原来缓存的文档还可以继续使用
503 Server Unaviailable-------请求完成,服务器临时挂载或单机,一段时间后才可能恢复正常
什么是持久连接
-
http1.1版本支持持久连接