python - 使用 python 连接到 Rest API。如何设置标题和参数?

标签 python api python-requests

我正在使用 python 设置 REST API,但是在让它工作时遇到一些问题。

我正在使用 TV DB Rest api:https://api.thetvdb.com/swagger

并使用 python 和 Requests 库来提取信息。

我的代码当前是:

import json 
import requests

 URL = "https://api.thetvdb.com/"

API_KEY = "Api_key"
USER_KEY = "Key"
USERNAME = "Name"

headers  = {"Accept": "application/json"}
params = {
  "apikey": API_KEY,
  "userkey": USER_KEY,
  "username": USERNAME
}

resp = requests.post(URL + "login/", headers = headers ,params=params)

if resp.status_code != 200:
    print('error: ' + str(resp.status_code))
else:
    print('Success')

到目前为止,我只收到错误代码 401,不知道为什么。

已解决:

2 件事需要改变 1.resp改为:

resp = requests.post(URL + "login/", headers = headers, data=json.dumps(params))
  • 标题必须有

    "Content-Type": "application/json"
    
  • 已添加:)现在可以使用了,谢谢大家

    最佳答案

    登录参数可能需要是作为消息正文发布的 JSON 编码字符串。

    尝试resp = requests.post(URL + "login/", headers = headers, data=json.dumps(params))

    关于python - 使用 python 连接到 Rest API。如何设置标题和参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45552132/

    相关文章:

    python - 如何使用 Python 检查用户和密码是否已在 MySQL 数据库中?

    api - Haskell GHC API 中的动态编译错误

    python - 使用 Beautiful Soup 和 Python 抓取 Asp.NET 网站

    python - 如何将带撇号的字符串对象传递给 POST 调用

    api - BigCommerce 以编程方式将产品添加到购物车并重定向到结帐页面

    Python API Post请求URL返回错误

    python - 搜索列表中的项目

    python - 我无法使用 python 脚本将文件上传到谷歌云?

    python - pandas 排序列遗漏值

    javascript - node.js 和路由 : emit by class