Get vs Post
提交方式
form可以有两种方式, 参数method
可以指定post
和get
Get
方式把内容直接附到url上,一波发送到action
地址Post
先和action
地址建立连接,然后在消息体中传输内容
1 | <form action="page", method="get/post"> |
注意
form的action中如果带有参数比如action=xx.do?param=value
,只有post会传送,get会忽略掉
优缺点
Get坏处
- 安全问题:虽然Http明文本身不安全,但是Get时密码会出现在url串上,直接可见,并且会保存在历史日志中
- 编码问题: 只能发送ASCII,不能二进制数据
- 长度问题: url不能太长,因而限制了传送数据长度
Get好处
- 简单高效
- 后退无害,不会重复提交
- 服务端可脱离form直接用url访问
- 缓存问题: url可被浏览器缓存
- SEO: url对应页面,可被搜索引擎搜到
总结
- 幂等时使用Get
- 避免URL附加参数时使用Post
- 数据改变时使用Post,如新增数据,上传数据
一分也是爱~
版权声明
This site by Linest is licensed under a Creative Commons BY-NC-ND 4.0 International License.
由Linest创作并维护的博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证。