GWT 中的 getAuthDomain() 始终返回 gmail.com

发布于 2024-09-27 01:55:30 字数 959 浏览 1 评论 0原文

我正在使用 Google Web Toolkit 编写一个应用程序,并试图找出当前登录用户的 Google Apps 域。

public LoginInfo login(String requestUri) {
    UserService userService = UserServiceFactory.getUserService();
    User user = userService.getCurrentUser();
    LoginInfo loginInfo = new LoginInfo();

    if (user != null) {
        loginInfo.setLoggedIn(true);
        loginInfo.setEmailAddress(user.getEmail());
        loginInfo.setNickname(user.getNickname());
        loginInfo.setAuthDomain(user.getAuthDomain());
        loginInfo.setLogoutUrl(userService.createLogoutURL(requestUri));
        loginInfo.setIsAdmin(userService.isUserAdmin());
    } else {
        loginInfo.setLoggedIn(false);
        loginInfo.setLoginUrl(userService.createLoginURL(requestUri));
    }
    return loginInfo;
}

但是 user.getAuthDomain() 始终返回“gmail.com”。

这对于非 google-apps-用户来说应该是正确的。但当我使用我的 google apps 帐户登录时,它也会返回 gmail.com。

有什么想法吗?或者还有其他方法来获取用户当前的域吗?

I'm writing an application with Google Web Toolkit and am trying to figure out the Google Apps domain of the user currently logged in.

public LoginInfo login(String requestUri) {
    UserService userService = UserServiceFactory.getUserService();
    User user = userService.getCurrentUser();
    LoginInfo loginInfo = new LoginInfo();

    if (user != null) {
        loginInfo.setLoggedIn(true);
        loginInfo.setEmailAddress(user.getEmail());
        loginInfo.setNickname(user.getNickname());
        loginInfo.setAuthDomain(user.getAuthDomain());
        loginInfo.setLogoutUrl(userService.createLogoutURL(requestUri));
        loginInfo.setIsAdmin(userService.isUserAdmin());
    } else {
        loginInfo.setLoggedIn(false);
        loginInfo.setLoginUrl(userService.createLoginURL(requestUri));
    }
    return loginInfo;
}

But user.getAuthDomain() is always returning "gmail.com".

which should be correct for non-google-apps-users. But it also returns gmail.com when I log in with my google apps account.

Any ideas why? Or is there an other method to get the users current domain?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

以可爱出名 2024-10-04 01:55:30

我会使用 GWT.getHostPageBaseUrl() 访问主机页面的基本 URL,并从中解析域名。

I would use GWT.getHostPageBaseUrl() to access the host page's base URL, and parse the domain name from that.

ぶ宁プ宁ぶ 2024-10-04 01:55:30

这将解决你的问题:

`String domain=ApiProxy.getCurrentEnvironment().getAttributes().get("com.google.appengine.api.users.UserService.user_organization").toString();`

This will solve your thing:

`String domain=ApiProxy.getCurrentEnvironment().getAttributes().get("com.google.appengine.api.users.UserService.user_organization").toString();`
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文