[英]How to parse URL encoded data recieved via POST
我正在為通過 URL 編碼的POST
發送數據的服務編寫一個 django webhook。 示例POST
顯示如下:
POST id=a5f3ca18-2935-11e7-ad46-08002720e7b4
&originator=1123456789
&recipient=1987654321
&subject=MMS+reply
&body=View+our+logo
&mediaUrls[0]=https://storage.googleapis.com/mms-assets/20170424/a0b40b77-30f8-4603-adf1-00be9321885b-messagebird.png
&mediaContentTypes[0]=image/png
&createdDatetime=2017-04-24T20:15:30+00:00
我知道如何解析json
,但我以前沒有遇到過這種格式。 關於如何通過POST
處理這個問題,似乎沒有任何有用的教程。 我被困在這一點上,所以幫助將不勝感激。
蟒蛇2:
>>> from urlparse import parse_qs
>>> parse_qs('foo=spam&bar=answer&bar=42')
{'foo': ['spam'], 'bar': ['answer', '42']}
蟒蛇3:
>>> from urllib.parse import parse_qs
>>> parse_qs('foo=spam&bar=answer&bar=42')
{'foo': ['spam'], 'bar': ['answer', '42']}
都是 python 2/3:
>>> from six.moves.urllib.parse import parse_qs
更新程序
還有一個parse_qsl
函數返回一個包含兩項元組的列表,比如
>>> parse_qsl('foo=spam&bar=answer&bar=42')
[('foo', 'spam'), ('bar', 'answer'), ('bar', '42')]
將這樣的列表傳遞給dict()
構造函數非常合適,這意味着您得到一個每個名稱只有一個值的字典。 請注意,最后的名稱/值對優先於早期出現的相同名稱(請參閱庫參考中的字典)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.