美文网首页
移动开发通信之get/post理解和使用

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

作者: 树懒啊树懒 | 来源:发表于2017-09-17 15:29 被阅读49次

    前言:
    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

    相关文章

      网友评论

          本文标题:移动开发通信之get/post理解和使用

          本文链接:https://www.haomeiwen.com/subject/kkiesxtx.html