【问题标题】:Where to use the API authorisation key in this API?在这个 API 中哪里可以使用 API 授权密钥?
【发布时间】:2022-03-14 20:34:54
【问题描述】:

我正在使用以下 api:

https://www.football-data.org/documentation/api

我得到了一个 api 密钥,并尝试提出示例请求:

https://api.football-data.org/v2/teams/86/matches?status=SCHEDULED

当然我得到错误

{"message":"The resource you are looking for is restricted. Please pass a valid API token and check your subscription for permission.","errorCode":403}

所以问题是,我如何向网站提供我的 api 密钥以允许我提出这些请求?

查看 python sn-p,他们创建了一个以 api 键为值的字典,并将其传递给请求。如何在我的浏览器中制作这个?

我试过了

https://api.football-data.org/v2/teams/86/matches?status=SCHEDULED&%22X-Auth-Token%22=%22MYAPIKEY%22

它没有工作。

【问题讨论】:

    标签: api request authorization


    【解决方案1】:

    您将 API 密钥作为查询参数传递,这不符合 API 规范。 API 需要密钥作为 HTTP 标头。您无法在网络浏览器中轻松做到这一点。我建议获取类似Postman 的内容或在命令行上执行:

    curl -i -H "X-Auth-Token: MYAPIKEY" "https://api.football-data.org/v2/teams/86/matches?status=SCHEDULED"
    

    【讨论】:

      【解决方案2】:

      你现在可能已经想通了,但我放弃了这个,让其他人在寻找如何在 Python 中做到这一点:

      import requests
      from pprint import pprint
      
      
      token = "" # Write the api key emailed to you here
      
      headers = {
          'X-Auth-Token': token,
      }
      
      r = requests.get('http://api.football-data.org/v2/competitions/EC/teams', headers=headers).json()
      
      pprint(r, indent=2, depth=1, compact=True)
      

      【讨论】:

        【解决方案3】:

        如果您使用像@Jakob Löhnertz 建议的邮递员。

        1. 你要先进入api

        1. 然后转到“标头”选项卡,将“X-Auth-Token”作为您的密钥,并将您的唯一 API 令牌作为您的值。点击发送,你应该一切都好。

        最后,一定要通过here查看免费帐户的可用比赛列表。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-09-28
          • 2017-11-08
          • 2020-05-23
          • 1970-01-01
          • 2018-03-20
          • 1970-01-01
          • 2023-03-30
          • 2020-08-17
          相关资源
          最近更新 更多