request.post 不支持的媒体类型错误
Unsupported Media type error for request.post
我正在与 python 进行 api 通话。这里我有在我试图访问的网站中生成的 json 格式的参数。但是,当我尝试 运行 程序时,出现 415: unsupported Media Type
错误。不确定我做错了什么,因为我使用的是网站生成的参数。
这是我到目前为止的代码
def jprint(obj):
text = json.dumps(obj, sort_keys=True, indent=4)
print(text)
url = 'https://einv-apisandbox.nic.in/gstvital/api/auth'
parameters = {
"header": {
"ClientID": "TheClientIDGoesHere",
"ClientSecret": "TheClientSecretGoesHere"
},
"data": {
"UserName": "Username",
"Password": "Password",
"AppKey": "AppKey",
"ForceRefreshAccessToken": "false"
}
}
response = requests.post(url, params=parameters)
jprint(response.json())
在上面的代码中,我删除了实际参数并将它们替换为虚拟文本。但是当我用实际参数尝试它们时,我得到以下错误
{
"status": 415,
"title": "Unsupported Media Type",
"traceId": "|df46105a-49e1b43f80675626.",
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.13"
}
我更改的一件事是这段代码 "ForceRefreshAccessToken": "false"
。在生成的 json 代码中,false
不在引号内
不确定我做错了什么。请帮助我。
import requests
import json
def jprint(obj):
text = json.dumps(obj, sort_keys=True, indent=4)
print(text)
url = 'https://einv-apisandbox.nic.in/gstvital/api/auth'
parameters = {
"header": {
"ClientID": "TheClientIDGoesHere",
"ClientSecret": "TheClientSecretGoesHere"
},
"data": {
"UserName": "Username",
"Password": "Password",
"AppKey": "AppKey",
"ForceRefreshAccessToken": False
}
}
hdr = {"Content-Type": "application/json"}
response = requests.post(url, data=parameters, headers=hdr)
print(response.status_code)
print(response.json())
错误 415 表示站点不支持该媒体类型。这可以通过在 header 中明确声明 content-type 将是 JSON 来解决。
hdr = {"Content-Type": "application/json"}
该站点的响应代码是“200:OK”,因此您的请求有效。
我正在与 python 进行 api 通话。这里我有在我试图访问的网站中生成的 json 格式的参数。但是,当我尝试 运行 程序时,出现 415: unsupported Media Type
错误。不确定我做错了什么,因为我使用的是网站生成的参数。
这是我到目前为止的代码
def jprint(obj):
text = json.dumps(obj, sort_keys=True, indent=4)
print(text)
url = 'https://einv-apisandbox.nic.in/gstvital/api/auth'
parameters = {
"header": {
"ClientID": "TheClientIDGoesHere",
"ClientSecret": "TheClientSecretGoesHere"
},
"data": {
"UserName": "Username",
"Password": "Password",
"AppKey": "AppKey",
"ForceRefreshAccessToken": "false"
}
}
response = requests.post(url, params=parameters)
jprint(response.json())
在上面的代码中,我删除了实际参数并将它们替换为虚拟文本。但是当我用实际参数尝试它们时,我得到以下错误
{
"status": 415,
"title": "Unsupported Media Type",
"traceId": "|df46105a-49e1b43f80675626.",
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.13"
}
我更改的一件事是这段代码 "ForceRefreshAccessToken": "false"
。在生成的 json 代码中,false
不在引号内
不确定我做错了什么。请帮助我。
import requests
import json
def jprint(obj):
text = json.dumps(obj, sort_keys=True, indent=4)
print(text)
url = 'https://einv-apisandbox.nic.in/gstvital/api/auth'
parameters = {
"header": {
"ClientID": "TheClientIDGoesHere",
"ClientSecret": "TheClientSecretGoesHere"
},
"data": {
"UserName": "Username",
"Password": "Password",
"AppKey": "AppKey",
"ForceRefreshAccessToken": False
}
}
hdr = {"Content-Type": "application/json"}
response = requests.post(url, data=parameters, headers=hdr)
print(response.status_code)
print(response.json())
错误 415 表示站点不支持该媒体类型。这可以通过在 header 中明确声明 content-type 将是 JSON 来解决。
hdr = {"Content-Type": "application/json"}
该站点的响应代码是“200:OK”,因此您的请求有效。