・OAUTH2.0&GMAIL&Java をローカル環境で実装
かなり大変だったけど、道筋は通るようになった。
OAUTH2.0は、アプリケーションがユーザーデータを扱うにあたって、
利用するユーザーデータの範囲(スコープ)について申請を行い、
一度ユーザーの認証を受けたら、それ以降はユーザーの同意なしで利用継続する認証技術のようです。
・Googleのデベロッパーコンソールよりメール送信用のプロジェクト新規作成
・API>APIよりGmailのAPI使用許可
・API>認証>新しいクライアントID作成>installedアプリケーション>その他
・Jsonキーファイルをダウンロード
・Javaにて、
・GoogleAuthorizationCodeFlowを生成
・credential = new AuthorizationCodeInstalledApp(flow, new LocalServerReceiver()).authorize(userId)
※userId=認証のクライアントID
・実行後、ブラウザが立ち上がりグーグルアカウントへ認証要求が来るのでOKする。
・以降credential.refreshTokenでトークン最新化し利用する。
・認証済みcredentialを利用し、Gmailインスタンスを生成。
Gmail service = new Gmail.Builder(transport, jsonFactory, credential)
setApplicationName(APP_NAME).build();
・メール送信なら、 service.users().messages().send("me", msg).execute();
・あとは好きに利用。
メモレベルだが、しっかりまとめたいなぁ。
とりあえず、これで毎日のフィード件数をメールで受信しよう。
統計データも多少混ぜていき、日々のモチベーション維持システムを作る。
OAUTH2.0に関するGoogleのサンプルコードは大量にあるし、ヘルプも充実しているので何とか。日本語ブログによる実装は少なかった・・・。
・MySQLバージョンアップ
稼働確認中。dumpインポートまであっさり。
[0回]
PR