我正在尝试使用Request POST方法来获取访问令牌。
根据他们的API文档:
HTTP Request POST /api/auth
curl -X POST "/api/auth"
-F email=my_email
-F api_key=my_api_key来自https://api.aupropertyreport.com/doc/#authentication
我这样写:
auth_url = 'https://aupropertyreport.com/api/auth'
response = requests.post(auth_url, data = {
'email':'xxxxx@hotmail.com',
'api_key':auproperty_api,
})
token = response.json()如果有人知道如何解决这个问题,那似乎是行不通的?
错误信息:
{'err_code': '9001',
'err_title': '\u51fa\u9519\u5566',
'err_msg': 'success',
'data': [],
'has_next_page': False,
'updated': '2022-03-15 17:58:23'}如果成功,它应该返回类似的内容(作为API文档中的一个例子):
{
"data": {
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOi8vbHVtZd4tYXBpLWRlbW8uZGV1L2FwaS9hdXRob3JpemF0aW9ucyIsImlhdCI6MTQ4Mzk3NTY5MywiZXhwIjoxNDg5MTU5NjkzLCJuYmYiOjE0ODM5NzU2OTMsImp0aSI6ImViNzAwZDM1MGIxNzM5Y2E5ZjhhNDk4NGMzODcxMWZjIiwic3ViIjo1M30.hdny6T031vVmyWlmnd2aUr4IVM9rm2Wchxg5RX_SDpM",
"expired_at": "2017-03-10 15:28:13",
"refresh_expired_at": "2017-01-23 15:28:13"
}
}发布于 2022-03-15 07:18:49
试试这段代码。细节应该进入标头,而不是数据。
headers["Accept"] = "application/json"
headers["email"] = "<email-id>"
headers["api_key"] = "<api_key>"
headers["Content-Type"] = "application/json"
resp = requests.post(url, headers=headers)发布于 2022-03-15 07:27:45
CURL命令显示选项-F,它引用POST请求中的表单数据。但是,python请求不知道它应该以多部分/表单数据的形式发送data。
在post请求中添加一个标题字段以使用Content-Type: multipart/form-data。
https://stackoverflow.com/questions/71478083
复制相似问题