移動開發(fā)通信之get/post理解和使用

前言:
GET和POST設計目的本身就是不一樣的,很多人簡單理解POST更安全就嫌棄GET,索性巴不得全部換成POST請求。我只能呵呵了...
POST比GET更安全?暫且不說是不是真的安全,就算是,難道設計都是以安全為最終目的嗎?POST請加個書簽給我看看,加個緩存給我看看...片面考慮問題得出的結論都是不負責任的。

所謂安全性

(1)從攻擊上說:
POST相對GET安全一點點,畢竟https加密下post參數很難獲取,但是get也是可以加密的。所以說安全一點。

(2)從修改數據庫上說:
GET是安全的,而POST是不安全的,不管你的參數怎么隱藏,一旦破解就有可能修改數據庫,看上去是一件很危險 事情。而GET一般只查詢數據庫。

先簡單介紹一下GET和POST,然后討論如何選擇吧

一、GET
簡單請求方式:協議+地址+參數

GET的優(yōu)點

1、get的URL可以人肉手輸查看網頁的
2、get的請求中URL可以被存在書簽里,或者歷史里,或者快速撥號里面,或者分享給別人
3、get的請求URL可以被搜索引擎收錄
4、帶云壓縮的瀏覽器,比如Opera mini/Turbo 2, 只有GET才能在服務器端被預取的
5、get的URL可以被緩存,避免重復請求
6、GET 速度一般比 POST快,如果緩存更不用說了

GET的缺點

運動都是相對的,優(yōu)點有時候也可以成為缺點。
1、參數暴露地址中更容易被竊取
2、各家瀏覽器會對get長度做限制(不是協議本身限制),實際上也用不著那么長,POST同時也是受到服務器傳輸大小限制的,只不過設置大小不一樣而已。

二、POST
簡單請求方式:協議+地址+HEADER 參數
post是通過HTTP post機制,將表單內各個字段與其內容放置在HTML HEADER內一起傳送到ACTION屬性所指的URL地址,用戶明眼看不到這個過程(想看也不是不能,https相對較難)。

POST可以做什么?

1、請求信息而不容易暴露敏感參數,比如手機號,省份證號,密碼等等
2、提交表單對數據庫進行:增刪改查(post可以只查詢)

比較 GET 與 POST

比較 GET 與 POST后發(fā)現各有優(yōu)缺點。

如何選擇?

1、如果你是查詢數據,并且需要上述GET優(yōu)點里前五條的要求時,那么選擇GET吧!
2、如果涉及修改數據庫,或者除了上述以外的,那么就用POST吧!

移動開發(fā)通信之http/https概念-優(yōu)缺點-選擇
移動開發(fā)通信之https加密協議SSL/TLS理解
移動開發(fā)通信之API接口安全設計

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

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發(fā)現,斷路器,智...
    卡卡羅2017閱讀 134,973評論 19 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,462評論 25 708
  • 22年12月更新:個人網站關停,如果仍舊對舊教程有興趣參考 Github 的markdown內容[https://...
    tangyefei閱讀 35,235評論 22 257
  • 1. 網絡基礎TCP/IP HTTP基于TCP/IP協議族,HTTP屬于它內部的一個子集。 把互聯網相關聯的協議集...
    yozosann閱讀 3,470評論 0 20
  • “待我了無牽掛 許你浪跡天涯 待我一襲袈裟 許你相思放下” 兩天過去了,林婧婷被葉子宇照顧的臉色漸漸紅潤起來,到...
    九貓巷口閱讀 315評論 0 1