移动开发通信之get/post理解和使用

前言:
GET和POST设计目的本身就是不一样的,很多人简单理解POST更安全就嫌弃GET,索性巴不得全部换成POST请求。我只能呵呵了...
POST比GET更安全?暂且不说是不是真的安全,就算是,难道设计都是以安全为最终目的吗?POST请加个书签给我看看,加个缓存给我看看...片面考虑问题得出的结论都是不负责任的。

所谓安全性

(1)从攻击上说:
POST相对GET安全一点点,毕竟https加密下post参数很难获取,但是get也是可以加密的。所以说安全一点。

(2)从修改数据库上说:
GET是安全的,而POST是不安全的,不管你的参数怎么隐藏,一旦破解就有可能修改数据库,看上去是一件很危险 事情。而GET一般只查询数据库。

先简单介绍一下GET和POST,然后讨论如何选择吧

一、GET
简单请求方式:协议+地址+参数

GET的优点

1、get的URL可以人肉手输查看网页的
2、get的请求中URL可以被存在书签里,或者历史里,或者快速拨号里面,或者分享给别人
3、get的请求URL可以被搜索引擎收录
4、带云压缩的浏览器,比如Opera mini/Turbo 2, 只有GET才能在服务器端被预取的
5、get的URL可以被缓存,避免重复请求
6、GET 速度一般比 POST快,如果缓存更不用说了

GET的缺点

运动都是相对的,优点有时候也可以成为缺点。
1、参数暴露地址中更容易被窃取
2、各家浏览器会对get长度做限制(不是协议本身限制),实际上也用不着那么长,POST同时也是受到服务器传输大小限制的,只不过设置大小不一样而已。

二、POST
简单请求方式:协议+地址+HEADER 参数
post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址,用户明眼看不到这个过程(想看也不是不能,https相对较难)。

POST可以做什么?

1、请求信息而不容易暴露敏感参数,比如手机号,省份证号,密码等等
2、提交表单对数据库进行:增删改查(post可以只查询)

比较 GET 与 POST

比较 GET 与 POST后发现各有优缺点。

如何选择?

1、如果你是查询数据,并且需要上述GET优点里前五条的要求时,那么选择GET吧!
2、如果涉及修改数据库,或者除了上述以外的,那么就用POST吧!

移动开发通信之http/https概念-优缺点-选择
移动开发通信之https加密协议SSL/TLS理解
移动开发通信之API接口安全设计

参考:
http://www.runoob.com/tags/html-httpmethods.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,477评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,645评论 25 709
  • 22年12月更新:个人网站关停,如果仍旧对旧教程有兴趣参考 Github 的markdown内容[https://...
    tangyefei阅读 35,296评论 22 257
  • 1. 网络基础TCP/IP HTTP基于TCP/IP协议族,HTTP属于它内部的一个子集。 把互联网相关联的协议集...
    yozosann阅读 8,761评论 0 20
  • “待我了无牵挂 许你浪迹天涯 待我一袭袈裟 许你相思放下” 两天过去了,林婧婷被叶子宇照顾的脸色渐渐红润起来,到...
    九猫巷口阅读 2,498评论 0 1