質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.10%

はじめてのAPI利用、【アクセストークンを○○○○○ヘッダに指定して、APIリクエストを行う】とはPHPでどういう手続きを指しますか?

受付中

回答 0

投稿

  • 評価
  • クリップ 3
  • VIEW 459

score 164

PHP初心者ながら APIの利用に挑戦しだしています。
あるAPIを利用する上での手順書に以下記述があります。

1.認証情報(クライントキーとシークレットトークン)を用いてアクセストークンを取得する
2.アクセストークンを○○○○○ヘッダに指定して、APIリクエストを行う

アクセストークンを取得するためのURL,リクエストパラメータ,成功時のレスポンスは以下の通り。

【URL】
POST https://□□□□□□□/△△△△

【リクエストパラメータ】
1:client_key
2:secret_token

【成功時レスポンス】
status code_200と共に以下のJSONオブジェクトを返す
{
    "access_token": "XXXXXXXXXXXXXXXXXXXXXXXXXXX"
}

★利用の主目的のAPIに関し、別の手順書があります。
URL、リクエストパラメータ、成功時レスポンスの記載ありますが、アクセストークンとの関わりが一切記述がありません。

====質問====
手順1は API提供元に申込むことで既に入手済み、画面で照会できてます(オンコーディング可)
それで今の私は、PHPで 現実どういった手続きを行えば良いのでしょうか?

まず、アクセストークンを入手する仕組みが必要なのでしょうが、header関数でclient_keyとsecret_tokenをURL末尾にクエリ文字列として渡す、ということなのでしょうか?すみません、なんかヒントを下さい!

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正の依頼

  • saya24

    2019/10/06 23:20

    本日、「Web技術基本」という本を読んで思いました。HTTPリクエストでなにわともあれAPIにあたってみるか〜、という気分に。

    明日出社したら、cURL関数でPOSTメソッドを、指定された2項目をメッセージボディに織り交ぜ送信してみます。アクセストークンが得られたらいいなぁ

    キャンセル

  • saya24

    2019/12/12 21:41

    なんか私は勘違いをしていたようです。質問に記載した「手順1」は既に入手済み、の記載は大きく間違っていたようです。訂正してお詫び致します。

    シークレットトークンが API提供元に申告することで画面から供給されるだけであって、そのシークレットトークンを利用して、毎回可変(30分有効)のアクセストークンを入手した上 これを本筋APIのあるヘッダに指定しなければならないようです。また、この際にリクエストパラメータとして2つのある値をあたえることで 期待されるJSONオブジェトをもどされることが分かりました。

    アクセストークンの取得は curlでなんとか対処することができました。この後の本筋APIのURLへ ヘッダにコレを指定し、かつリクエストパラメータも指定する手立てが分かりません。

    これもCurlで対応できることなのでしょうか

    キャンセル

  • saya24

    2019/12/14 09:56

    PHPのcurlで無事できました。
    -Hオプションで ヘッダ項目の値を指定することができることを認識し、早速アクセストークンをその方式にならい指定、またGETでアクセスするURL末尾にリクエストパラメータを付加して試したところ無事に解決しました。

    キャンセル

まだ回答がついていません

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.10%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • トップ
  • PHPに関する質問
  • はじめてのAPI利用、【アクセストークンを○○○○○ヘッダに指定して、APIリクエストを行う】とはPHPでどういう手続きを指しますか?