GET | POST | |
---|---|---|
后退/刷新 | 无害的 | 数据会被重新提交 |
书签 | 可收藏为书签 | 不可收藏为书签 |
缓存 | 能被缓存 | 不能缓存 |
编码类型 | application | 多为二进制数据使用多重编码 |
历史 | 会保留参数在历史中 | 不会保存在历史数据中 |
对长度的限制 | 最大为2048 | 无限制 |
对数据类型的限制 | ASCII | 没有限制,也可以为二进制数据 |
安全性 | 安全性较差,敏感数据,密码请勿使用后 | 安全性较高 |
可见性 | 数据在URL中对所有人可见 | 数据不会限制在URL中 |
GET方法参数是固定的么?
在约定中我们的参数是写在?后面,用&分割,解析报文的过程是通过获取TCP数据,用正则表达式等工具获取Header和Body
GET的长度限制:
浏览器地址栏输入的参数是有限的,Http协议中没有长度限制,对URl的长度限制通常为浏览器或者服务器的原因
POST比GET安全:
POST会产生2个TCP数据包?
POST会将Header和Body分开发送,但是HTTP协议中没有明确会产生2个数据包,而且实际测试的时候也不会分开发送,所以分开发送只是部分浏览器和框架的请求方法,不属于POST的必然行为。
原文:https://www.cnblogs.com/zrx19960128/p/11342160.html