2

我想在基于 JSP 和 Servlet 的 J2EE Web 应用程序中实现“使用 Google 登录”类型的登录。如何实施。

让我解释一下::

1)用户点击“使用谷歌登录”。
2)现在他重定向到谷歌的页面并点击“允许访问”。
3) 单击 Allow Access 后,他重定向到他的用户门户

这是程序。我使用了 Scribe APi,但我不知道如何在 jsp 页面中实现它。

你能解释一下如何使用任何开源 API 来实现它吗?

(我搜索了 StackOVerflow 但我只找到了 php/asp 但没有找到 jsp)

请不要关闭我的问题,因为我是stackoverflow的新手。

4

1 回答 1

0

示例 Java 代码

// Create a state token to prevent request forgery.
  // Store it in the session for later validation.
  String state = new BigInteger(130, new SecureRandom()).toString(32);
  request.session().attribute("state", state);
  // Read index.html into memory, and set the Client ID,
  // Token State, and Application Name in the HTML before serving it.
  return new Scanner(new File("index.html"), "UTF-8")
      .useDelimiter("\\A").next()
      .replaceAll("[{]{2}\\s*CLIENT_ID\\s*[}]{2}", CLIENT_ID)
      .replaceAll("[{]{2}\\s*STATE\\s*[}]{2}", state)
      .replaceAll("[{]{2}\\s*APPLICATION_NAME\\s*[}]{2}",
                  APPLICATION_NAME);

它在 Java 中可用,就流程而言,为了这个答案的完整性,我想简要概述一下。

  1. 用户点击“使用 Google 登录”
  2. 由于使用了 javascript,用户被重定向到某个 google 页面,在该页面中要求用户获得许可。
  3. 在接受或授予权限时,Google 会将用户(根据应用程序的请求发送接受/不接受的响应以及其他与用户相关的数据)重定向到在注册应用程序时指定的某个预先确定的 URL。
  4. 然后那个url处理程序(servlet/jsp)进一步负责获取google响应请求的数据并将其保存在数据库中

希望这样可以清楚地解释。您可以在 LRA 的问题评论中提到的链接中轻松找到更多信息。

于 2013-08-04T18:41:34.810 回答