GAE Java - Googleユーザーアカウントの統合

GAE + Java – Googleユーザーアカウントの統合

このチュートリアルでは、Google Java SDKUserServiceクラスを介して、GoogleユーザーアカウントをGAE + Javaプロジェクトに統合する方法を示します。

使用ツール:

  1. JDK 1.6

  2. Eclipse 3.7 + Eclipse用Googleプラグイン

  3. Google App Engine Java SDK 1.6.3.1

1. GAEユーザーサービスの例

ユーザーがGoogleアカウントを使用してログインする場合は、ウェルカムメッセージと「Logout」リンクを表示します。それ以外の場合は、「Login」リンクを表示します。

package com.example.user;

import java.io.IOException;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.google.appengine.api.users.User;
import com.google.appengine.api.users.UserService;
import com.google.appengine.api.users.UserServiceFactory;

@SuppressWarnings("serial")
public class LoginExampleServlet extends HttpServlet {
    public void doGet(HttpServletRequest req, HttpServletResponse resp)
            throws IOException {

        UserService userService = UserServiceFactory.getUserService();
        User user = userService.getCurrentUser();

        resp.setContentType("text/html");
        resp.getWriter().println("

GAE - Integrating Google user account

"); if (user != null) { resp.getWriter().println("Welcome, " + user.getNickname()); resp.getWriter().println( " LogOut "); } else { resp.getWriter().println( "Please LogIn "); } } }

Note
ログインページとログアウトページの両方がGAEによって自動的に処理されますが、ワークフローは異なります。

  1. ローカルで実行– Googleアカウントのサインインページをシミュレートします(パスワード認証なし)。

  2. GAEで実行–実際のGoogleアカウントのログイン画面にリダイレクトされます。

2. ローカルで実行する

プロジェクトを右クリックして、「Webアプリケーション」として実行します。 デフォルトでは、ポスト8888で実行されます。

Figure 2.1:アクセスURL:http://localhost:8888/loginexample

GAE integrating google account and run it local

Figure 2.2:シミュレートされたGoogleのログイン画面。何かを入力します。認証はありません。

GAE integrating google account and run it local

Figure 2.3:ようこそ、ログアウトリンクを表示します。

GAE integrating google account and run it local

3. GAEにデプロイする

アプリケーションID「example-java」を使用して、Google AppEngineをデプロイします。

Figure 3.1 –アクセスURL:http://example-java.appspot.com/loginexample

GAE integrating google account and run it on GAE

Figure 3.2 –実際のGoogleアカウントのログイン画面にリダイレクトします。

GAE integrating google account and run it on GAE

Figure 3.3 –ログインが成功した場合は、http://example-java.appspot.com/loginexampleにリダイレクトします。

GAE integrating google account and run it on GAE

ソースコードをダウンロード

ファイルサイズが大きいため、GAE SDKの依存ライブラリはすべて除外されます。

ダウンロード–GAE-UserService-LoginExample.zip(8 KB)