1

我用的是GAE1.6.3/Java,联合登录,我用的是知名的

com.google.appengine.api.users.UserService.createLogoutURL(String destinationURL, String authDomain)

创建创建注销 url。

使用开发服务器,登录后退出,当你再次尝试登录时,它会提示登录面板。现在输入另一个用户的电子邮件,登录后,我将看到与以前的用户相同的数据。调试后我发现这是因为用户注销后会话没有被破坏,所以另一个用户登录系统会将他识别为以前的用户。

将我的应用程序交付给appspot后,当我注销然后尝试登录时,它并没有将我带到登录页面,而是直接进入我的应用程序。我认为正确的行为应该就像 GMail 一样。我认为根本原因与开发服务器相同。

有任何想法吗?

4

1 回答 1

1

当用户单击注销时,他们将注销 App Engine 应用程序,但不会注销联合提供程序。它在以下文档中明确提到: https ://developers.google.com/appengine/articles/openid

要清除应用程序中的会话,请提供应用程序的注销 url 并使用 session.invalidate() 使会话无效,然后使用 com.google.appengine.api.users.UserService.createLogoutURL(String destinationURL, String authDomain) 重定向

于 2012-07-26T18:05:31.603 回答