http請求四種常見的POST提交資料方式

2022-07-02 01:54:10 字數 1405 閱讀 1031

enctye可選項如下:

1 概述

http/1.1 協議規定的http請求方法有options、get、head、post、put、delete、trace、connect這幾種。其中post一般用來向服務端提交資料,本文主要討論post提交資料的幾種方式。

http協議是以ascii碼傳輸。他是建立在tcp/ip協議之上的應用層規範,規定http請求分為三個部分:

。狀態行

。headers請求頭

。entity-body訊息主體

類似於下面這樣:

http協議規定post提交的資料必須放在訊息主體(entity-body)中,但並沒有規定資料必須使用什麼編碼方式。實際上,開發者完全可以自己決定訊息主體的格式,只要最後傳送的http請求滿足上面的格式就可以。

單數,資料傳送出去,還要服務端解析成功才有意義。一般服務端語言如php、python等,以及他們的framework,都內建了自動解析常見資料格式的功能。服務端通常是根據請求頭(headers)中的content-type欄位來獲知請求中的訊息主體是用何種方式編碼,再對主體進行解析。所以post提交資料報含了content-type和訊息主體編碼方式兩部分,下面就正式開始介紹它們。

2、簡介

通過抓包結果我們能得到以下結論:

。提交的資料按照key1=val1&key2=val2的方式進行編碼,key和val都進行了url轉碼。大部分服務端語言都對這種方式有很好的支援。

2)multipart/form-data

乙個常見的post資料提交的方式。我們使用表單上傳檔案時,必須將enctype設為multipart/form-data。

4)text/xml

xml-rpc(xml remote procdure call)。它是一種使用http作為傳輸協議,xml作為編碼方式的遠端呼叫規範。典型的xml-rpc請求是這樣的:

xml-rpc協議簡單、功能夠用,各種語言的實現都有。它的使用也很廣泛,如 搜尋引擎的ping服務等。

Python請求外部POST請求,常見四種請求體

這又是乙個常見的 post 資料提交的方式。我們使用表單上傳檔案時,必須讓 form 的 enctyped 等於這個值,下面是示例 它是一種使用 http 作為傳輸協議,xml 作為編碼方式的遠端呼叫規範。import urllib url body value body value urllib....

Python請求外部POST請求,常見四種請求體

http 協議規定 post 提交的資料必須放在訊息主體 entity body 中,但協議並沒有規定資料必須使用什麼編碼方式。常見的四種編碼方式如下 1 application x www form urlencoded 這應該是最常見的 post 提交資料的方式了。瀏覽器的原生 form 表單,...

HTTP四種常見的POST提交資料方式

http 1.1 協議規定的 http 請求方法有 options get head post put delete trace connect 這幾種。其中 post 一般用來向服務端提交資料,本文主要討論 post 提交資料的幾種方式。我們知道,http 協議是以 ascii 碼傳輸,建立在 t...