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 КБ)