GAE + Java - интеграция учетной записи Google
В этом руководстве мы покажем вам, как интегрировать учетную запись пользователя Google в проект GAE + Java с помощью класса Google Java SDKUserService.
Используемые инструменты:
-
JDK 1.6
-
Eclipse 3.7 + плагин Google для Eclipse
-
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 автоматически, но рабочий процесс отличается:
-
Запустить на локальном компьютере - имитирует страницу входа в учетные записи Google (без аутентификации по паролю).
-
Запустить на GAE - он будет перенаправлен на экран входа в учетную запись Google.
2. Запустите его локально
Щелкните правой кнопкой мыши по проекту и запустите как «Веб-приложение». По умолчанию он запускается на пост 8888.
Figure 2.1: URL-адрес доступа:http://localhost:8888/loginexample
Figure 2.2: смоделированный экран входа в Google, введите что-нибудь, без аутентификации.
Figure 2.3: добро пожаловать и отобразите ссылку для выхода.
3. Развернуть на GAE
Разверните Google App Engine, используя идентификатор приложения «example-java».
Figure 3.1 - URL-адрес доступа:http://example-java.appspot.com/loginexample
Figure 3.2 - Перенаправление на фактический экран входа в учетную запись Google.
Figure 3.3 - в случае успешного входа в систему перенаправить обратно наhttp://example-java.appspot.com/loginexample
Скачать исходный код
Из-за большого размера файла все библиотеки зависимостей GAE SDK исключены.
Скачать -GAE-UserService-LoginExample.zip (8 КБ)