Python 发布请求错误



>我正在尝试从"belfrics.in"api生成身份验证令牌

import json
from urllib.request import Request, urlopen
from urllib.parse import urlencode
import requests
belfrics_url1 = "https://india-exchange.belfrics.com:443/gateway/public/authenticate"
belfrics_data1 = {'username': 'abc', 'password': 'xyz', 'stayLoggedIn': True}
belfrics_headers = {'Content-Type': 'application/json'}
belfrics_req1 = requests.post(belfrics_url1,params=belfrics_data1, headers=belfrics_headers)
print(belfrics_req1.text)

每次我得到这个回复

{"success":false,"missing_authenticators":[],"infos":[],"warnings":[],"errors":[{"JSON_DECODE_FAILED":["No error"]}],"results":{}}

我无法弄清楚为什么我得到JSON_DECODE_FAILED错误。 我什至尝试使用 urlencode 对参数进行编码,但仍然遇到相同的错误。我替换了

params=belfrics_data1

params=urlencode(belfrics_data1)

好的,所以我找到了解决方案 通过更改

params=belfrics_data1

json=belfrics_data1

有人可以解释为什么会起作用吗?

API 文档在这里:https://india-exchange.belfrics.com/api#!/common.json/authenticate

您的网站需要 JSON;通过使用json参数而不是params参数,requests为您编码belfries_data1JSON 中,从而使网站满意。

相关内容

最新更新