-2

我正在尝试按照此示例制作 Google OAuth 应用程序。我的应用程序是一个 Web 应用程序,我想替换以下代码:

System.out.println("Paste this url in your browser: " + authorizeUrl);

// Wait for the authorization code
System.out.println("Type the code you received here: ");
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String authorizationCode = in.readLine();

因为它提示输入我authorizeUrl在浏览器中点击 URL 后得到的代码。我想删除此提示,并且应用程序本身应该不需要提示code

4

2 回答 2

2

用户必须在他们第一次访问您的应用程序时授予访问权限 - 除非您使用的是双向 OAuth 并且有 Google Apps 管理员授予对他们整个域的访问权限。不过,用户只需授权您的应用程序一次。当您从 OAuth 服务器取回响应时,您应该存储刷新令牌。然后,刷新令牌可用于在旧令牌过期后请求新的访问令牌。刷新令牌永不过期,但可以由用户撤销;如果发生这种情况,您需要再次提示他们。

您应该在https://developers.google.com/accounts/docs/OAuth2WebServer阅读 Google 的 OAuth 实施。您还可以使用OAuth Playground在实时环境中检查请求和刷新流程。

于 2013-01-22T22:55:59.587 回答
1

为了删除提示 Spring MVC 帮助。

使用重定向到该 URLRedirectView并将回调 URL 设置回您的应用程序当前 URL/页面并CODE从请求中获取参数。

于 2013-01-24T05:37:54.283 回答