为了账号安全,请及时绑定邮箱和手机立即绑定

[自动化实战]HTTP请求中POST和GET方法的六点区别

HTTP请求中POST和GET方法使用区别
在DevOPS这个工程中,自动化任务从浏览器端采用POST的方式提交任务数据给后端的ansible任务处理api接口,为什么采用POST而不是GET方法呢?
这个得从POST方式和GET方式得区别说起:
图片描述

(差别一)GET后退按钮/刷新无害,POST数据会被重新提交(浏览器应该告知用户数据会被重新提交)。

(差别二)GET书签可收藏,POST为书签不可收藏。GET能被缓存,POST不能缓存 。GET编码类型application/x-www-form-url,POST编码类型encodedapplication/x-www-form-urlencoded 或 multipart/form-data。为二进制数据使用多重编码。

(差别三)GET历史参数保留在浏览器历史中。POST参数不会保存在浏览器历史中。

(差别四)GET对数据长度有限制,当发送数据时,GET 方法向 URL 添加数据;URL 的长度是受限制的(URL 的最大长度是 2048 个字符)。POST无限制。

(差别五)GET只允许 ASCII 字符。POST没有限制。也允许二进制数据。

(差别六)与 POST 相比,GET 的安全性较差,因为所发送的数据是 URL 的一部分。在发送密码或其他敏感信息时绝不要使用 GET !POST 比 GET 更安全,因为参数不会被保存在浏览器历史或 web 服务器日志中。GET的数据在 URL 中对所有人都是可见的。POST的数据不会显示在 URL 中。

另外,补充一点我们常见的POST数据方式有表单的方式和json字符串的方式,如果客户端需要POST比较复杂的数据结构,建议使用json字符串的方式提交到服务端。

图片描述
课程介绍:https://coding.imooc.com/class/160.html
课程问答区:https://coding.imooc.com/learn/qa/160.html

点击查看更多内容
19人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消