OpenIDを使用してサインインするためにGWTアプリケーションで通常行うことは次のとおりです。
LoginInfo loginInfo = new LoginInfo();
UserService userService = UserServiceFactory.getUserService();
loginInfo.setLoginUrl(userService.createLoginURL(returnToUrl));
return loginInfo();
ここで、returnToUrlは、確認後にリダイレクトする現在のURLです。returnToUrlがhttp://mydomain.com/go/hereのような単純なURLである場合、これは正常に機能します
しかし、私のアプリケーションはGMailコンテキストガジェットとして実行されるため、Googleプロキシ(googleusercontent.com)からコンテンツを取得するフレームにラップされます。つまり、これは-少し複雑です-私がリダイレクトしたいフレーム内のURLです:
OpenIDの登録中に、ユーザーは何度かリダイレクトされ、returnToUrlが適切にURLエンコードされていない場合、その一部が失われます。
ここでわかったように、場合によってはURLを二重にエンコードする必要があります。しかし、今回はURLを正しくエンコードできません。
だから、私の質問:
GmailのコンテキストガジェットでOpenID-return-to-URLがどのように表示されるかについてのヒントはありますか?
または、もう少し簡単な質問です。他に、現在ログインしているGMailユーザーのメールアドレスを取得する方法はありますか?