Google APIを使用したアプリケーションの動作
Google APIを使用するアプリケーションを作成するための準備が整いました。いよいよアプリケーションを実装する方法を説明していきます。
サンプルアプリケーションのソースコードはJavaで記述しました。こちらのGistから取得できます。本文中では説明対象のコード部分しか示しませんので、Gistからサンプルコードを取得するなどしてご覧ください。
今回作成するアプリケーションは、次のように2段階で動作します。
- Authorization Codeを取得するためのURLを表示する
- Authorization Codeとの交換でアクセストークンを取得する
1. Authorization Codeを取得するためのURLを表示する
ターミナルやコマンドプロンプトでサンプルコードをコンパイルし、実行すると次のように表示されます。なお、コンパイルの前に、サンプルコードの11行目にあるCLIENT_IDと、13行目にあるCLIENT_SECRETの値は、先ほどメモしたClient ID
とClient Secret
にそれぞれ書き換えておきます。
サンプルコードはUTF-8で記述されているため、文字エンコーディングを指定してコンパイルしています(①)。
実行すると、最初にAuthorization Codeを取得するためのURLが表示されます(②)。Authorization Codeは、リソースの持ち主にアクセス許可をもらったことを示すコードです。
Authorization Codeを取得するためのURLは、標準エラー出力に出力されます。次のように実行して標準エラー出力だけをファイルに書き出すと、URLをブラウザに貼り付けやすくなります。java GoogleApiClient 2> URL.txt
このURLをブラウザで開くと、「リソースの持ち主にアクセス許可をもらう」ための画面が表示されます。メールのカテゴリを取得するGmailアカウントを選択し(③)、アクセス許可を承認すると(④)、最後にAuthorization Codeが表示されます(⑤)。
2. Authorization Codeとの交換でアクセストークンを取得する
コマンドプロンプトに戻ってAuthorization Codeを入力すると(⑥)、選択したGmailアカウントのカテゴリなどが表示されます(⑦)。
このときアプリケーションでは、入力されたAuthorization Codeと交換する形で、リソースへアクセスするために必要なアクセストークンを取得し、Gmail APIを呼び出しています。
ここまでのアプリケーションの動作をまとめると、次の図のようになります。