0

我敢肯定这真的很平庸和愚蠢,但我无法为我的生活弄明白。

我正在使用 Alchemy API,其中使用 Requests 的 POST 请求看起来像

r = requests.post(url, payload, headers=headers)

其中有效负载是一个字典,其中包含一个用于 url 编码文本的字段,例如text=this%20is%text

我遇到的愚蠢问题是,如果我使用 urllib 进行编码,例如myText = urlencode({'text': textToEncode})

然后我不能将它插入到有效载荷中,payload={'text': myText}因为那时我可能会得到类似的东西text=text=this%20is%text

如果我可以对字符串本身进行编码,这会简单得多。编码功能添加了这些东西,因为整个字典都被编码了,所以我无法将插入转入字典。

我错过了一些非常简单和愚蠢的东西吗?

4

1 回答 1

1

尝试包括Content-type标题,例如application/json,然后使用data=json.dumps(payload).

import json
headers['Content-type'] = 'application/json'
r = requests.post(url, data=json.dumps(payload), headers=headers)
于 2015-03-23T03:56:22.147 回答