🥇 是基于什么前提的?如果什么前提都没有,不使用任何规范,只考虑语法和理论上的 HTTP 协议
GET和POST几乎没有什么区别,只有名字不一样
🥇 如果是基于 RFC 规范
🥈 理论上的( Specitication )
GET和POST具有相同的语法的,但是有不同的语义。GET是用来获取数据的,POST是用来发送数据的,其他方面没有区别。
🥈 实现上的( Implementation )各种浏览器,就是和这个规范的实现者
常见的不同
1. GET 数据在 url 是可见的,POST 是 url 不可见的
2. GET 对长度是有限制的,POST 长度无限制
3. GET 请求的数据可以收藏为书签,POST 请求到的数据不可收藏为书签
4. GET 请求后,按后退按钮,刷新按钮无影响,POST 数据会被重新提交
5. GET 的编码类型:application/x-www.from-url,POST 的编码类型:有很多种。encodeapplication/x-www-from-urlencoded 或 multipart/from-data
6. GET 历史参数会保留在浏览器中,POST 不会保存在浏览器中
7. GET 只允许 ASCLL,POST 没有编码限制,允许发二进制
8. GET 与 POST 相比呢,GET 安全性较差,因为所发的数据是 URL 的一部分