我是否正确地将日期对象发送到请求主体?Python

2024-10-01 17:24:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我通过pythonurllib和urllib2库发送POST请求。 我可以发送请求,但它忽略了日期(values)。在

在文档中,它说我需要传递请求主体上的日期对象。下面是我使用的代码。在

url = 'https://api.kenshoo.com/v2/reports/5233/runs/?ks=105'
values = {'dateRange': {'from':'2015-09-22', 'to':'2015-09-22'}}
data = urllib.urlencode(values)

req = urllib2.Request(url, data)

req.add_header('Content-Type', 'application/json; charset=utf-8')
req.add_header('Content-Length', 0)

response = urllib2.urlopen(req)

从API文档中,这是我对日期格式的了解。在

"The request body must contain a dates range in YYYY-MM-DD format, i.e.

^{pr2}$

请求的完整文档可以在这里找到 http://docs.api.kenshoo.com/#!/Reports/runReport


Tags: 文档comaddapiurldatacontenturllib2
1条回答
网友
1楼 · 发布于 2024-10-01 17:24:01

您应该发送JSON格式的文档,而不是urlencoded数据:

url = 'https://api.kenshoo.com/v2/reports/5233/runs/?ks=105'
values = {'dateRange': {'from':'2015-09-22', 'to':'2015-09-22'}}
req = urllib2.Request(url)
req.add_header('Content-Type', 'application/json')

response = urllib2.urlopen(req, json.dumps(values))

相关问题 更多 >

    热门问题