Http的請求和返回

1、基礎概念

HTTP是Hyper TextTransfer Protocol(超文本傳輸協議)的縮寫。它的發展是萬維網協會(World Wide WebConsortium)和Internet工作小組IETF(Internet Engineering Task Force)合作的結果,(他們)最終發佈了一系列的RFC,RFC 1945定義了HTTP/1.0版本。其中最著名的就是RFC 2616。RFC 2616定義了今天普遍使用的一個版本——HTTP 1.1。

HTTP協議(HyperTextTransfer Protocol,超文本傳輸協議)是用於從WWW服務器傳輸超文本到本地瀏覽器的傳送協議。它可以使瀏覽器更加高效,使網絡傳輸減少。它不僅保證計算機正確快速地傳輸超文本文檔,還確定傳輸文檔中的哪一部分,以及哪部分內容首先顯示(如文本先於圖形)等。


2、Http請求方法

1)      GET

2)      POST

3)      HEAD

4)      PUT

5)      DELETE

6)      OPTIONS

7)      TRACE

8)      CONNECT


3、http狀態響應碼

200——成功

301——刪除請求數據

302——在其他地址發現了請求數據

400——錯誤請求

401——未授權

404——沒有發現文件

500——內部服務器錯誤


4、Get和POST

GET方式:是以實體的方式得到由請求URI所指定資源的信息,如果請求URI只是一個數據產生過程,那麼最終要在響應實體中返回的是處理過程的結果所指向的資源,而不是處理過程的描述。

POST方式:用來向目的服務器發出請求,要求它接受被附在請求後的實體,並把它當作請求隊列中請求URI所指定資源的附加新子項,Post被設計成用統一的方法實現下列功能:

1:對現有資源的解釋;

2:向電子公告欄、新聞組、郵件列表或類似討論組發信息;

3:提交數據塊;

4:通過附加操作來擴展數據庫 。

從上面描述可以看出,Get是向服務器發索取數據的一種請求;而Post是向服務器提交數據的一種請求,要提交的數據位於信息頭後面的實體中。


GET與POST方法有以下區別:

(1)   在客戶端,Get方式在通過URL提交數據,數據在URL中可以看到;POST方式,數據放置在HTML HEADER內提交。

(2)   GET方式提交的數據最多只能有1024字節,而POST則沒有此限制。

(3)   安全性問題。正如在(1)中提到,使用 Get 的時候,參數會顯示在地址欄上,而 Post 不會。所以,如果這些數據是中文數據而且是非敏感數據,那麼使用 get;如果用戶輸入的數據不是中文字符而且包含敏感數據,那麼還是使用 post爲好。

(4)   安全的和冪等的。所謂安全的意味着該操作用於獲取信息而非修改信息。冪等的意味着對同一 URL 的多個請求應該返回同樣的結果。完整的定義並不像看起來那樣嚴格。換句話說,GET請求一般不應產生副作用。從根本上講,其目標是當用戶打開一個鏈接時,她可以確信從自身的角度來看沒有改變資源。比如,新聞站點的頭版不斷更新。雖然第二次請求會返回不同的一批新聞,該操作仍然被認爲是安全的和冪等的,因爲它總是返回當前的新聞。反之亦然。POST 請求就不那麼輕鬆了。POST 表示可能改變服務器上的資源的請求。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章