OpenId:使用Facebook和Twitter登录网页

时间:2012-09-11 12:18:44

标签: facebook gwt openid twitter-oauth gwt-platform

我已经使用GWT实现了适用于Google和Yahoo的OpenId身份验证服务。允许两个平台的用户使用他们的帐户登录我的网站,我们可以检索一些基本信息(电子邮件地址)。这是我的一段代码。

private static final Map<String, String> openIdProviders;
static {
  openIdProviders = new HashMap<String, String>();
  openIdProviders.put("Google", "https://www.google.com/accounts/o8/id");
  openIdProviders.put("Yahoo", "http://open.login.yahooapis.com/openid20/www.yahoo.com/xrds"); 
}   

userInfo.isSignedIn = false;
for (String providerName : openIdProviders.keySet()) {
  String providerUrl = openIdProviders.get(providerName);
  String loginUrl = userService.createLoginURL(action.getRequestURI(), null, providerUrl, new HashSet<String>());
  userInfo.signInURLs.put(providerName, loginUrl);
}

我如何为Facebook和Twitter做同样的事情?似乎他们不是openId提供者,对吧? Stackoverflow似乎已经实现了登录。

由于

2 个答案:

答案 0 :(得分:3)

我使用Scribe Java实施了FBTwitter登录。

答案 1 :(得分:1)

Facebook验证via OAuth 2.0client-sideserver-side身份验证都有示例。 Twitter是similar

在客户端,GWT JS Overlay Types将帮助您包装需要进行的JS调用。