我正在尝试在this example之后制作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
本身。
答案 0 :(得分:2)
用户必须在首次访问您的应用时授予访问权限 - 除非您使用的是双腿OAuth,并且拥有Google Apps管理员才能授予对整个域的访问权限。但是,用户只需要对您的应用程序进行一次授权。当您从OAuth服务器返回响应时,您应该存储刷新令牌。然后,刷新令牌可用于在旧的到期后请求新的访问令牌。刷新令牌永不过期,但可以由用户撤销;如果发生这种情况,你需要再次提示它们。
您应该在https://developers.google.com/accounts/docs/OAuth2WebServer了解Google的OAuth实施。您还可以使用the OAuth Playground检查实时环境中的请求和刷新流程。
答案 1 :(得分:0)
为了删除提示Spring MVC的帮助。
使用RedirectView
重定向到该网址,并将回调网址设置回应用程序当前网址/页面,并从请求中获取CODE
参数。