HTTP的請求方法OPTIONS

2021-07-12 06:42:30 字數 1326 閱讀 2645

http請求方法並不是只有get和post,只是最常用的。據rfc2616標準(現行的http/1.1)得知,通常有以下8種方法:options、get、head、post、put、delete、trace和connect。

options方法是用於請求獲得由request-uri標識的資源在請求/響應的通訊過程中可以使用的功能選項。通過這個方法,客戶端可以在採取具體資源請求之前,決定對該資源採取何種必要措施,或者了解伺服器的效能。

該請求方法的響應不能快取。

如果這個options請求包含乙個正文(有content-length或transfer-encoding存在),則必須有content-type來指定**型別。雖然規範裡沒有定義這種正文的用法,但是http將來的擴充套件可能會用它來查詢伺服器上更詳細的資訊。不支援該擴充套件的伺服器可以忽略該請求正文。

如果該uri是乙個星號(「*」),options請求將試圖應用於伺服器,而不是某個指定資源。由於伺服器的通訊選項通常依賴於資源,所以此「*」請求只能作為「ping」或者「no-op」方法;或者用來測試伺服器的效能。例如,用來測試http/1.1**。

如果該uri不是星號,則只能用來獲取該資源通訊中可用的選項。

得到的200響應應該包含乙個頭域,指明伺服器實現的和適用於該資源的可選特徵(如:allow),可能還包括該規範尚未定義的擴充套件。如果有響應正文,則應包含關於通訊選項的資訊。本規範沒有定義該正文格式,但可能在htto將來的擴充套件中定義。可以利用內容協商來選擇合適的響應格式。如果沒有響應正文,響應必須包含content-length,並且值為「0」。

請求頭的max-forwards用來請求特定**。當**收到乙個允許uri**的options請求,則檢查max-forwards。如果max-forwards值為0,則不能**該訊息;相反,**會將自己的通訊選項去響應。如果max-forwards是正整數,****請求的時候會將該值減1。如果請求中沒有max-forwards,**的請求也不會有。

options請求方法的主要用途有兩個:

1、獲取伺服器支援的http請求方法;也是黑客經常使用的方法。

2、用來檢查伺服器的效能。例如:ajax進行跨域請求時的預檢,需要向另外乙個網域名稱的資源傳送乙個http options請求頭,用以判斷實際傳送的請求是否安全。

the delete method

http提供了乙個與put方法對應的delete方法。乙個delete請求將需要從web伺服器刪除的內容指定為請求行中的資源部分。

delete方法唯一有趣的地方在於當你接收了乙個標識為200 ok的響應的時候,那並不意味著指定的資源已經被刪除了。那僅僅說明伺服器接收到了刪除資源的命令。這一例外允許了出於安全考慮的人為的干預

請求方法之Option

除了常用的get post請求方法以外還有乙個請求方法是經常遇到的,那就是option預檢請求 option用來查詢針對請求uri指定的資源支援的方法。簡單來說就是傳送option請求詢問伺服器,你支援哪種請求方法啊?支援get,post和option 如圖 響應頭引數中allow,表示伺服器允許的...

HTTP請求 HTTP方法

http 1.1中可使用的方法 get 獲取資源 獲取伺服器的某個資源 get方法用來請求訪問已經被uri識別的資源。制定的資源經伺服器端解析後返回響應內容。也就是說,如果請求的資源是文字,那就保持原樣返回 如果是像cgi common gateway inte ce,通用閘道器介面 那樣的程式,就...

http請求的方法

http1.0定義了三種請求方法 get,post 和 head方法。http1.1新增了五種請求方法 options,put,delete,trace 和 connect 方法。1get 請求指定的頁面資訊,並返回實體主體。2head 類似於get請求,只不過返回的響應中沒有具體的內容,用於獲取報...