2017-01-30 11 views
1

Excel VBAを使用してhttp://api.football-data.org/indexというオンラインAPIにアクセスしようとしていますが、ボタンをクリックするだけでExcelシートが表示されます。現在、私が持っている:Excel VBAからのRESTful API呼び出し

Sub apiTest() Dim oRequest As Object Set oRequest = CreateObject("WinHttp.WinHttpRequest.5.1") oRequest.Open "GET", " http://api.football-data.org/v1/competitions/354/fixtures/?matchday=22 ", False oRequest.SetRequestHeader "X-Auth-Token", "replace this with my api token" oRequest.Send MsgBox oRequest.ResponseText End Sub

サイトによると、私がする必要があるすべては、ヘッダにX-Authの-トークンフィールドを追加することであり、それが動作するはずです。しかし、これを実行しようとすると、応答本体に「探しているリソースが制限されています」と表示されます。 WinHTTPRequestを不適切に使用していますか?

答えて

1

its documentationを確認しました。エラー(403制限されたリソース)以下で行うことです。

  • リソースが
  • 認証されたクライアントにのみ利用可能であるリソースは、リソースがAPIで利用できない
  • 寄付クライアントにのみ使用可能です使用しているバージョン

また、X-Response-Controlはリクエストヘッダーとして含まれているようです(ドキュメントを参照)。

+0

私が使っていたリクエストは、クライアントを寄付することに制限されていなければなりません。彼のサイトは「無料」と主張しており、このリクエストはコードサンプルセクションの例として使用されているため、奇妙なものです。ありがとう房 – Scott

+0

認証に関係なく動作するサンプルURLがあることがわかりました。これはhttp://api.football-data.org/v1/competitions/424/fixtures?matchday=7です。あなたはこのURLで先に開発することができますあなたは支払いや寄付を通じて認証を取得します。 –

関連する問題