ホームページ > バックエンド開発 > C++ > OAuth を使用して Twitter API v1.1 で認証し、ユーザーのタイムラインを取得するにはどうすればよいですか?

OAuth を使用して Twitter API v1.1 で認証し、ユーザーのタイムラインを取得するにはどうすればよいですか?

Patricia Arquette
リリース: 2025-01-12 17:52:47
オリジナル
218 人が閲覧しました

How Do I Authenticate with Twitter API v1.1 Using OAuth and Retrieve a User's Timeline?

OAuth で Twitter API v1.1 を使用する: ユーザーのタイムラインを取得するためのガイド

Twitter API v1 は非推奨となっているため、Twitter サービスに継続的にアクセスするには API v1.1 への移行が重要です。このチュートリアルでは、OAuth を使用して認証し、HttpWebRequest.

経由でユーザーのタイムラインを取得する方法を示します。

OAuth 認証: 手順とプロセス

  1. OAuth 資格情報の取得: Twitter 開発者ポータルからコンシューマー キーとシークレットを生成します: https://www.php.cn/link/30fad467b7363d55fa24b3398fdef557.
  2. 認証ヘッダーの構築: 生成されたキーを使用して、次の形式で認証ヘッダーを作成します: Basic {Base64-Encoded(ConsumerKey:ConsumerSecret)}.
  3. OAuth2 トークン リクエスト: HTTP POST リクエストを OAuth2 トークン エンドポイントに送信します: https://api.twitter.com/oauth2/token。 リクエストには、認証ヘッダーと grant_type=client_credentials.
  4. を含むリクエスト本文が含まれている必要があります。
  5. 認証トークンの取得: サーバーの応答には、アクセス トークンとトークン タイプが含まれます。この JSON 応答を適切なオブジェクトに解析します。

ユーザー タイムラインの取得: 段階的なアプローチ

  1. タイムライン URL の作成: ユーザーのスクリーン名を使用してタイムライン URL を作成します: https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name={ScreenName}&include_rts=1&exclude_replies=1&count=5.
  2. Create HttpWebRequest: 構築された URL の HttpWebRequest オブジェクトをインスタンス化します。
  3. 認可ヘッダーの追加: 前の認証手順で取得したトークン タイプとアクセス トークンを使用して認可ヘッダーを含めます。
  4. HTTP GET リクエストの送信: HttpWebRequest オブジェクトを使用して HTTP GET リクエストを実行します。
  5. JSON 応答の処理: ユーザーのタイムライン データを含む JSON 応答を取得して解析します。

コード例

次のコードは、認証とタイムライン取得プロセスを示しています。

<code class="language-csharp">string oAuthConsumerKey = "superSecretKey";
string oAuthConsumerSecret = "superSecretSecret";
string oAuthUrl = "https://api.twitter.com/oauth2/token";
string screenName = "aScreenName";

// ...

// OAuth Authentication
string authHeaderFormat = "Basic {0}";
string authHeader = string.Format(authHeaderFormat,
    Convert.ToBase64String(Encoding.UTF8.GetBytes(Uri.EscapeDataString(oAuthConsumerKey) + ":" +
    Uri.EscapeDataString(oAuthConsumerSecret))));

string postBody = "grant_type=client_credentials";

HttpWebRequest authRequest = (HttpWebRequest)WebRequest.Create(oAuthUrl);
authRequest.Headers.Add("Authorization", authHeader);
authRequest.Method = "POST";
authRequest.ContentType = "application/x-www-form-urlencoded;charset=UTF-8";
authRequest.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;

// ... (Send POST request and handle response as before) ...

// Retrieve User Timeline
string timelineFormat = "https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name={0}&include_rts=1&exclude_replies=1&count=5";
string timelineUrl = string.Format(timelineFormat, screenName);
HttpWebRequest timelineRequest = (HttpWebRequest)WebRequest.Create(timelineUrl);
string timelineHeaderFormat = "{0} {1}";
timelineRequest.Headers.Add("Authorization", string.Format(timelineHeaderFormat, twitAuthResponse.token_type, twitAuthResponse.access_token));
timelineRequest.Method = "GET";

// ... (Send GET request and handle response as before) ...

// ... (TwitAuthenticateResponse class remains the same) ...</code>
ログイン後にコピー

この包括的なガイドを使用すると、安全かつ効率的なデータ取得のために OAuth を使用して Twitter API v1.1 をアプリケーションにシームレスに統合できます。

以上がOAuth を使用して Twitter API v1.1 で認証し、ユーザーのタイムラインを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート