镜像API总是请求auth-java示例代码



我是Glass的新手,我关注这个链接https://developers.google.com/glass/develop/mirror/quickstart/java将项目部署到谷歌应用程序引擎。

现在一切正常,但每次我关闭浏览器然后打开浏览器并访问我的网站(mysite.appspot.com)时,都需要用户一次又一次的权限。

请帮我解决,非常感谢。

这是因为Java Quickstart演示使用会话来识别用户。会话寿命结束的原因之一是用户退出浏览器。因此,当您关闭然后重新打开浏览器时,由于会话已结束,web应用程序无法识别您的身份。

在会话中检查用户身份的代码位于Quickstart演示项目的AuthFilter.java中:

if (AuthUtil.getUserId(httpRequest) == null
      || AuthUtil.getCredential(AuthUtil.getUserId(httpRequest)) == null
      || AuthUtil.getCredential(AuthUtil.getUserId(httpRequest)).getAccessToken() == null) {
    // redirect to auth flow
    httpResponse.sendRedirect(WebUtil.buildUrl(httpRequest, "/oauth2callback"));
    return;
  }

如果servlet找不到用户ID(就像会话中不再保存用户ID时的情况一样),它会再次运行用户身份验证过程,该过程从上面代码中的httpResponse.sendRedirect调用开始。

最新更新