GET和POST的区别是什么

102 阅读1分钟

区别一 : 幂等性

幂等性的意思是:重复执行,但获得的结果是不变的

由于get是读,post是写,所以get是幂等的,post不是幂等的
由于get是读,post是写,所以浏览器打开网页会发送get请求,想要post打开网页需要from标签
由于get是读,post是写,所以get打开网页刷新是无害的,post打开的页面刷新需要确认 (经典例子,支付的时候用的就是post请求,如果刷新不用确认可能会造成多次支付的后果)
由于get是读,post是写,所以get结果会被缓存,post结果不会被缓存
由于get是读,post是写,所以get打开的页面可以被书签收藏,post打开的不行

区别二 : 请求参数

1.通常,get请求的参数放在url里,post请求数据放在body(消息体)里。(可以不答:当然get也可以放在消息体里,post也可以放在url里,但可能浏览器和后端不支持)
2.get比post更安全,因为get参数直接暴露在url上,所以不能用来传递敏感信息
3.get请求参数放在url里有长度限制,post放在body(消息体)里没有长度限制。(可以不答:正常情况都有长度限制,不可能无限制接收数据大小)