2012-12-29 109 views
0

我需要解析POST請求,特別是其參數。我瞭解它的方式是請求的主體包含key1=value&key2=value形式的參數列表或其他數據,如上傳的文件。有什麼方法可以確定我得到的東西(參數或文件數據)嗎?如何解析POST請求的主體

一個快速的解決方案可能是正則表達式,但文件也可能包含在key1=value&key2=value

由於形式的數據!

回答

4

有沒有辦法確定我得到的東西(參數或文件數據)?

是的,但不是從身體。您需要閱讀請求標頭Content-Type

如果它是Content-Type: multipart/form-data,那麼您已經擁有了可以包含文件數據的複雜MIME multipart語法。

如果是Content-Type: application/x-www-form-urlencoded,那麼您已經獲得了類似查詢字符串的參數。

如果是別的東西(例如application/json),您將得到一個自定義的POST請求,而不是通過直接的表單提交來觸發,在這種情況下,由您來決定該格式是什麼。

+0

美麗的答案。 – Bruno