GET 和 POST 请求总是会在面试过程中被问到,虽然方方总是说这两者没啥区别,但是作为面试题,还是写篇文章总结下吧。
GET | POST | |
---|---|---|
参数 | 一般放在 URL 的查询参数里 | 放在请求体里 |
安全 | GET 更安全,因为写在 URL 里是以明文显示 | POST 写在消息体里更不容易发现(其实也是明文,没有 HTTPS 的话) |
参数长度 | GET 参数长度放在 URL,URL 长度为1024个字符 | POST 参数为 4 ~ 10M |
包 | GET 请求只发一个包 | POST 需要发两个以上(有消息体) |
数据 | GET 一般用来获取数据 | POST 一般用来改数据 |
注意:以上我都用了“一般”两个字,因为 GET 也是可以带消息体的,只是一般不这么做,硬做也是可以的。如果带了消息体其实和 POST 差不多。
网友评论