在客户机和服务器之间进行请求-响应时,两种最常被用到的方法是:GET 和 POST,除了这两种还有PUT和DELETE
GET - 从指定的资源请求数据
POST - 向指定的资源提交要被处理的数据
POST和GET是HTTP获取数据的两种方法,HTTP底层是用TCP/IP来实现的,所以POST和GET也是用TCP/IP协议来获取数据的
- GET在浏览器退回的时候是无害的,而POST回确认重新提交
- GET的参数是在URL中的,POST的参数在request body中
- GET请求会被自动浏览器缓存,而POST不会,除非设置
- GET比POST更不安全,因为GET传输的参数暴露在URL中
- GET传送的数据长度有限制,最大不能超过2K。而POST默认为不受限制
- GET请求参数会保留在浏览器历史记录里,而POST中的参数不会被保留
- GET是发送一个数据包,浏览器会把 http header 和 data 一起发送出去,服务器响应200 并返回数据
- POST会发送两个数据包,浏览器会先发送 header 服务器响应100 continue,浏览器继续发送 data 服务器响应200 返回数据(有些浏览器只发送一个数据包,有些框架封装POST的时候回先发送header在发送data,而大部分都是发送一个数据包)
以上都是浏览器或者是服务器添加的一些限制,
网友评论