使用Python 3.5的时候,并请2.18.4我需要将数据发送到另一个服务无法requests.post,它目前没有出于某种原因。 发送是在我接收并清除来自另一个服务的数据后进行的,并最终将数据验证并设置为本机python字典。 这工作时的数据是硬编码的,我没有使用的输入数据(硬编码的JSON字符串):使用json.dumps
def my_post_method(self, url, data):
# import requests (above)
return requests.post(
url,
data='{"keyA":"valA", "keyB":"valB" ... }',
headers={'Content-Type': 'application/json'},
) # status 200
但我不能由于某种原因原始数据发送。从上面
def my_post_method(self, url, data):
# import requests, json (above)
d = json.dumps(data)
return requests.post(
url,
data=d,
headers={'Content-Type': 'application/json'},
) # status 400
d:{"keyA":"valA", "keyB":"valB" ... }
我试图使用请求JSON参数,而不是数据,但其他服务在另一端显然期望数据参数。 这是否意味着我发布的服务正在等待一个json格式的字符串?
我们可以知道其他服务?我们可以尝试一些公开的东西吗? – GendoIkari
您是否尝试再次使用硬编码字符串进行POST?服务是否可能返回400秒,因为它不希望您两次提交相同的请求? –
谢谢@Rob瓦,但我回答如下─一些奇怪的原因,键 - 值的顺序被考虑到当接收端被验证传入的数据。我真的不知道为什么... – camelBack