我正在使用带有Python的urllib发送POST请求。
我使用Charles查看通常发送的POST,现在我尝试使用urllib发送相同的内容。
这是应根据查尔斯发送的内容:
{" stuff_values":{" description":"这是描述"," somestuff":[{" thing& #34;:"你好","标题":"我爱饼干"}]}}
这就是我发送的内容:
stuff_values =%7B%27description%27%3A +%27This是+描述%27%2C +%27somestuff%27%3A +%5B%7B%27thing%27%3A +%27hello%27%2C +%27title%27% 3A +%27I +爱+饼干%27%7D%5D%7D
这是我的代码的一部分:
values = {
"stuff_values":{
"description":"this is description",
"somestuff" : [{"thing":"hello",
"title":"i love cookies"}]}
}
data = urllib.parse.urlencode(values)
data = data.encode('ascii')
req = urllib.request.Request(url, data, headers = headers)
有人可以帮我解决这个问题吗?我猜测我对编码部分有问题,但也正确地格式化了其余部分。
感谢您的时间!
答案 0 :(得分:1)
尝试:
data = str(values)
代替。 urlencode
正在将某些字符转换为%xx转义。