Twitter API v1.1

TwitterTwitter Developer

処理の流れ

 状態:  閲覧数:596  投稿日:2016-11-11  更新日:2019-03-07
「OAuth 1.0 a」を採用しているが、一部で「OAuth2.0」の仕組みも導入している
Application-only authentication


OAuth


2016年現在の最新標準は、2012年にRFCとして発行された「OAuth 2.0(RFC6749、RFC6750)」
・しかし、「Twitter API v1.1」の「Authentication Model」は、旧バージョンの「OAuth Core 1.0 Revision A」がメイン
・「OAuth1.0」「OAuth2.0」の互換性はない

Twitter Developer Documentation

基本的な処理の流れ

 閲覧数:149 投稿日:2016-11-11 更新日:2016-11-11 

1.「Twitter Developers」でApp作成


自動発行
・Consumer Key (API Key)
・Consumer Secret (API Secret)


2.「アクセストークン」取得


「アクセストークン」とは?
・Access Token
・Access Token Secret

「アクセストークン」取得するためには?
・2-1.「リクエストトークン」取得
・2-2.取得した「リクエストトークン」を使用して、ユーザーを「Twitterサーバー上にある認証画面」へ誘導。ユーザが「連携アプリを認証」ボタンクリック
・2-3.アクセストークン取得

「アクセストークン」取得すると?
・「Twitter API」で各種リクエスト受付可能になる

「アクセストークン」取得するまでの流れ

 閲覧数:167 投稿日:2016-11-11 更新日:2016-11-11 

2-1.「リクエストトークン」取得


POST送信
https://api.twitter.com/oauth/request_token

結果例
・戻り値
oauth_token=Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik&oauth_token_secret=Kd75W4OQfb2oJTV0vzGzeXftVAwgMnEK9MumzYcM&oauth_callback_confirmed=true

POST oauth/request_token


2-2.取得した「リクエストトークン」を使用して、ユーザーを「Twitterサーバー上にある認証画面」へ誘導


GET送信
https://api.twitter.com/oauth/authenticate?oauth_token=Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik

ユーザが「連携アプリを認証」ボタンクリック
・結果例

https://api.twitter.com/oauth/authorize
Callback URL?oauth_token=Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik&oauth_verifier=Toe2Fl6p0LlqfvpWNwisLTUDRZEUlOCT

GET oauth/authenticate


2-3.アクセストークン取得


POST送信
https://api.twitter.com/oauth/access_token

結果例
・成功したリクエストに対する戻り値
oauth_token=6253282-eWudHldSbIaelX7swmsiHImEL4KinwaGloHANdrY&oauth_token_secret=2EEfA6BG3ly3sR3RjE0IBSnlQu4ZrUzPiYKmrkVU&user_id=6253282&screen_name=twitterapi


戻り値比較一覧表



2-1.リクエストトークン 2-2.認証画面 2-3.アクセストークン
oauth_token Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik 6253282-eWudHldSbIaelX7swmsiHImEL4KinwaGloHANdrY
上記使用用途 認証画面へ誘導する際、URLの一部として使用 アクセストークンを取得する際、パラメータとして使用 「Twitter API」へ各種リクエストする際、パラメータとして使用
oauth_token_secret Kd75W4OQfb2oJTV0vzGzeXftVAwgMnEK9MumzYcM - 2EEfA6BG3ly3sR3RjE0IBSnlQu4ZrUzPiYKmrkVU
上記使用用途 アクセストークンを取得する際、署名キーを作成するため使用 - 「Twitter API」へ各種リクエストする際、署名キーを作成するため使用
oauth_callback_confirmed true - -
上記使用用途 未使用 - -
oauth_verifier - Toe2Fl6p0LlqfvpWNwisLTUDRZEUlOCT -
上記使用用途 - アクセストークンを取得する際、パラメータとして使用 -


分かりづらい点

 閲覧数:130 投稿日:2016-11-11 更新日:2016-11-11 

同じキー名でも、使用場面毎に異なる値が返ってくる(ことがある)


同じ値が返ってくる場合もある
・紛らわしいし、分かりづらい


oauth_token


リクエストトークン
・「https://api.twitter.com/oauth/request_token」からの戻り値
・リクエストトークンを意味する
・認証画面へ誘導する際、URLの一部として使用

認証画面
・「https://api.twitter.com/oauth/authenticate」アクセス後のURLパラメータ
・リクエストトークンを意味する
・上記と同じ取得結果
・アクセストークンを取得する際、パラメータとして使用

アクセストークン
・「https://api.twitter.com/oauth/access_token」からの戻り値
・アクセストークンを意味する
・「Twitter API」へ各種リクエストする際、署名キーを作成するため使用

Twitter検索結果。「Twitter API v1.1」に関する最新ツイート


Twitter アプリケーション分類

authorize authenticate



週間人気ページランキング / 7-24 → 7-30
順位 ページタイトル抜粋 アクセス数
1 mhtmlの問題 | Google Chrome 拡張機能 3
1 fatal: remote error: is not a valid repository name | Git BASH(開発環境) 3
1 GitHubリモートリポジトリ名には日本語を使用できない。使用すると、ハイフンへ自動置換されてしまう | GitHub(開発環境) 3
1 teratailでは質問しない | プログラミング 3
2 Twitterにおける「name」「screen_name」「user_id」の意味は明確に異なる | Twitter Developer(Twitter) 2
2 決済(Webサービスビジネス) カテゴリー 2
2 「Windows10」へ「gitfor windows VERSION 2.22.0」をインストール | GitHub(開発環境) 2
2 キーワード「」検索結果一覧 2
2 課金決済代行サービスを分類 | Webサービスビジネス 2
2 作成したい課金プラットフォーム | 決済(Webサービスビジネス) 2
2 Twitter 複数アカウントでPOSTしたい | Twitter Developer(Twitter) 2
2 2018年を振り返り、2019年の方針を決める。Webサービスビジネス | Webサービスビジネス 2
2 TwitterOAuth では、画像URL を指定した画像投稿は出来ない(と思う)。ライブラリを使用しなければ出来るから、Twitter API の制限ではない(と思われる)  | Twitter 2
2 コインチェック株式会社   | Webサービスビジネス 2
2 プログラミング言語比較チートシート | プログラミング 2
2 デモ動作確認済API | Twitter Developer(Twitter) 2
2 うちはイタチ と 断捨離 | プログラミング 2
2 マッチングサービス | Webサービスビジネス 2
2 Twitter 認証で電子メール取得するまで | Twitter Developer(Twitter) 2
2 Git BASH(開発環境) カテゴリー 2
2021/7/31 1:02 更新