data = {
'ids': [12, 3, 4, 5, 6 , ...]
}
urllib2.urlopen("http://abc.example/api/posts/create",urllib.urlencode(data))
我想发送一个 POST 请求,但其中一个字段应该是数字列表。我怎样才能做到这一点? (JSON?)
原文由 TIMEX 发布,翻译遵循 CC BY-SA 4.0 许可协议
我推荐使用令人难以置信的 requests
模块。
http://docs.python-requests.org/en/v0.10.7/user/quickstart/#custom-headers
url = 'https://api.github.com/some/endpoint'
payload = {'some': 'data'}
headers = {'content-type': 'application/json'}
response = requests.post(url, data=json.dumps(payload), headers=headers)
原文由 FogleBird 发布,翻译遵循 CC BY-SA 3.0 许可协议
2 回答4.3k 阅读✓ 已解决
2 回答854 阅读✓ 已解决
1 回答4.1k 阅读✓ 已解决
3 回答843 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
4 回答2.5k 阅读
3 回答895 阅读✓ 已解决
如果您的服务器期望 POST 请求是 json,那么您需要添加一个标头,并为您的请求序列化数据……
Python 2.x
Python 3.x
https://stackoverflow.com/a/26876308/496445
如果不指定标头,则默认为
application/x-www-form-urlencoded
类型。