0

個人の YouTube アカウントを自分のウェブサイトのアカウントに「リンク」するにはどうすればよいですか? 動画からアナリティクスを取得しようとしています。動画がどれだけの収益を上げたかなどです。YouTube アナリティクス API を使用することになっていることはわかっていますが、さまざまなドキュメントがたくさんあり、非常に混乱しています。このデータを取得し、ユーザーのアカウントを Web アプリケーションにリンクするために使用できる PHP ライブラリはありますか? また、OAuth キーを取得する場所についても混乱しています。

ここに私が見たいくつかのサイトがあります:

1)サイトワン

2)サイト 2

サイト 2 で例を見ましたが、開始方法を理解するのに役立つものは何もありませんでした。

4

1 に答える 1

1

必要な関連情報の多くは、このドキュメントで見つけることができます。

https://developers.google.com/youtube/analytics/authentication

基本的には、次の 4 つの手順の概要を説明します。

1) ウェブアプリを Google Cloud Console に登録する

これは、クライアント シークレットとクライアント ID を取得できるようにするために必要です。これは、サーバー側の PHP コードが oAuth フローを実行するために必要になります (そして、認証しているユーザーの分析データをクエリできる適切なスコープを取得します)。これを行う方法の詳細については、こちらを参照してください。

https://developers.google.com/youtube/analytics/registering_an_application

アプリを登録する際に最も重要なことは、YouTube アナリティクス API を有効にして、ウェブ アプリケーション用の新しいクライアント ID を作成することです。

2) ユーザーがページにアクセスしたときに、oAuth フローの開始をトリガーする何らかの方法 (ログイン ボタンなど) が必要です。これがトリガーされたら、ブラウザを次の URL にリダイレクトします。

https://accounts.google.com/o/oauth2/auth?client_id=[あなたのクライアント ID]&redirect_uri=[認証後にユーザーを誘導する URL]&scope= https://www.googleapis.com /auth/yt-analytics.readonly&response_type=code&access_type=offline

これにより、アプリに分析を読み取る許可を与えるかどうかを尋ねるウィンドウが表示されます。クライアント ID パラメーターは、ステップ 1 でアプリを登録したときに受け取ったものと同じであることに注意してください。その登録プロセスでは、許可されたリダイレクト URI を設定する必要もあるため、ここでは、登録で設定したものを渡す必要があります。

3) リダイレクト URL は、ステップ 2 から、「コード」パラメータが添付された Google のサーバーによって要求されます。そのため、リクエストがあった場合、すぐに次のような別の URL (つまり、cURL などを使用) に POST を実行する必要があります。

POST /o/oauth2/token HTTP/1.1 ホスト: accounts.google.com コンテンツ タイプ: application/x-www-form-urlencoded

code=[GET パラメータとして入ってきたコード] &client_id=[あなたのクライアント ID]&client_secret=[あなたのクライアント シークレット]&redirect_uri=[登録されたリダイレクト URI]&grant_type=authorization_code

cURL を使用して POST として実行すると、応答はアクセス トークンとリフレッシュ トークンを含む JSON パケットになります。

4) PHP ページはこれらの両方を (たとえば、DB に) 保存できます。この時点でユーザーはログイン済みとして扱われるべきであり、分析に送信されるすべての API 要求のヘッダーでアクセス トークンを使用できることに注意してください。 API。

https://developers.google.com/youtube/analytics/authentication#OAuth2_Calling_a_Google_API

IT は 1 時間で期限切れになるため、リクエストごとにその経過時間を確認する必要があります (たとえば、DB に保存したときに有効期限を保存できます)。トークンを更新して、新しいアクセス トークンを取得します。

https://developers.google.com/youtube/analytics/authentication#OAuth2_Refreshing_a_Token

アプリが API とのインターフェイスを開始するために必要な場所にリダイレクトできるようになりました。

多いような?そうかもしれませんが、パラダイムを理解すれば、それは非常に簡単です。そして、あなたは PHP のクライアントについて尋ねましたが、ありがたいことに次のようなものがあります。

https://github.com/google/google-api-php-client

oAuth2 フロー全体の単純なハンドラーがあり、さまざまな呼び出しを行うときにアクセス トークンを自動的に設定する YouTube 分析サービス オブジェクトもあります。

于 2014-02-23T07:41:45.963 に答える