我正在写基于http.server
一个非常简单的HTTP服务器(使用Python-3)http.server:解码POST请求JSON
客户端应该通过POST发送JSON对象。
payload={'text': 'bi ba buzemann!',
'nouns': ['streetlight', 'situation'],
'states': ['solid', 'fluid']
}
requests.post(url, data=payload)
这个罚款到达在服务器上,但在serializd形式
def do_POST(self:
length = self.headers['content-length']
data = self.rfile.read(int(length))
# b'states=solid&states=fluid&nouns=oracle&text=bi+ba+buzemann%21'
现在我的问题是:我如何把这个urlencoded的结果返回到一个字典(或中间JSON)?
我一定要手动执行此操作,如:
for x in str(r).split('&'):
y,z=x.split('=')
if not y in d:
d[y]=[]
d[y]+=[urllib.parse.unquote_plus(z)]
或者是有一些良好的调试功能,可以在一些共同的模块?