GET VS POST?

GET和POST的区别?

GET 和 POST对比

\

GET

POST

数据位置

URL之后

请求主体

可见性

在URL,因此会被保存在书签、历史记录

不可见且不会被保留

数据安全性

参数暴露,往往用于获取资源信息

参数不会被保留故稍微安全点

编码

URL 编码(application/x-www-form-urlencoded)

各种(JSON, multi-part)

缓存

可被缓存,Cache-Control没有指定则不缓存

不可缓存

数据类型

只支持 ASCII

无限制

数据大小

受限于最大URL长度(取决于浏览器,如IE是2048个字符)

无限制

TCP包数目

1个

2个,头部和主体分别提交(除了Firefox是1个)

服务器安全

安全,因为只读服务器

不安全,会改变服务器状态

幂等性

有幂等性,连续执行多次的效果是一样的

不是幂等的,调用多次会增加多行记录

Last updated