如何指定使用HttpPost时参数应附加到网址的顺序?
目前我正在使用:
def httpPost(url,resource,params):
headers = {
"Content-type" : "application/json",
}
conn = http.client.HTTPSConnection(url, timeout=10)
temp_params = urllib.parse.urlencode(params)
conn.request("POST", resource, temp_params, headers)
response = conn.getresponse()
data = response.read().decode('utf-8')
params.clear()
conn.close()
return data
类似于来自https://docs.python.org/2/library/httplib.html的httpGet示例代码,对于params参数,它都接受我无法创建订单的{}类型输入。
>>> params= {'search': 'qwert','bolt': 'asdf'} # arbitrary order
>>> print(params)
{'bolt': 'asdf', 'search': 'qwert'} #out of order
由于我使用网站的API,我需要keys =值按特定顺序。有没有办法修改代码来接受列表?
也许接受的东西:
['key=xxx-yyy-zzz-111-333', 'nonce=2487236483724', 'pageIndex=1', 'pageSize=10']
其中每个元素在列表中保持其位置。