HTTP 的请求方式
网上对于HTTP请求总结很多,本文主要用来屡屡思路。
HTTP协议可理解为服务器和客户端通信时,发送的数据(报文)所要遵守的规则。
GET请求格式:
1.请求行
1 请求的方式 GET2 请求的资源路径3 请求的协议版本号 HTTP/1.1
2.请求头
key:value 不同的请求头不同含义
POST请求格式:
1.请求行
1 请求的方式 POST2 请求的资源路径3 请求的协议版本号 HTTP/1.1
2.请求头
key:value 不同的请求头不同含义
3.请求体
发送给服务器的数据
区分GET和POST请求
GET和POST有什么区别?
0、GET 产生一个 TCP 数据包;POST 产生两个 TCP 数据包。GET 方式的请求,浏览器会把 http header 和 data 一并发送出去,服务器响应 200(返回数据);POST,浏览器先发送header,服务器响应 100 continue,浏览器再发送 data,服务器响应 200 ok(返回数据)。1、数据传输方式不同:GET 通过 URL 传输数据,而 POST 的数据通过请求体传输。
2、安全性不同:GET 比 POST 更不安全,因为参数直接暴露在 URL 上,所以不能用来传递敏感信息。
3、数据类型不同:GET 只允许 ASCII 字符,而POST无限制。
4、GET 无害: 刷新、后退等浏览器操作 GET 请求是无害的,POST 可能重复提交表单。
5、特性不同:GET 是安全(指只读特性,不会引起服务器状态变化)且幂等(幂等的概念是指同一个请求方法执行多次和仅执行一次的效果完全相同),而 POST 是非安全非幂等。
6、GET 请求会被浏览器主动cache,而 POST不会,除非手动设置。
7、GET 请求在 URL 中传送的参数是有长度限制的,而 POST 没有。
参考:
/xuxinstyle/p/9462177.html
/qq_39519224/article/details/100192037