1
我想在我的Google应用中实施OpenID + OAuth混合协议。 我正在获取请求令牌。因此,作为联合登录中文档的下一步是访问令牌的交换请求令牌。如何从请求令牌获取使用java的OpenID + OAuth的访问令牌
我尝试过使用OAuth java库,但我没有获取访问令牌。我正在尝试三脚和双脚的方法都不成功。
是否有人成功地完成混合协议。
GoogleOAuthParameters oauthParameters = new GoogleOAuthParameters();
oauthParameters.setOAuthConsumerKey(consumerKey);
oauthParameters.setOAuthConsumerSecret(consumerSecret);
calendarService = new CalendarService("marketplace-hello");
try {
calendarService.setOAuthCredentials(oauthParameters,
new OAuthHmacSha1Signer());
CalendarEventFeed results = calendarService.query(calendarFeedUrl,
CalendarFeed.class);
}
catch (OAuthException e)
{
throw new ServletException("Unable to initialize calendar service", e);
}
这是投掷com.google.gdata.client.authn.oauth.OAuthException:组oauth_token不存在。
oAuthParameters.setOAuthType(OAuthType.TWO_LEGGED_OAUTH);和xoauth_requestor_id attibute to feedURL如果我在代码中添加这些行我得到Invalid AuthSub令牌异常我不知道它为什么说无效的AuthSub。
您需要包括更多的信息。 *为什么*不起作用?出了什么问题?有没有错误信息?解释你是如何尝试去做的。我们不介意读者。 – Qwerky 2010-10-22 09:17:21
OAuth规范有2个规范1)3腿和2)2腿。 在三方中有3方涉及1)服务提供商2)消费者和3)用户 在双方只有2方服务1)服务提供商和2)消费者和用户是同一实体(属于同一个域)。 上面提到的代码是用于不需要访问令牌的双腿认证过程。但在请求他需要给出同一域的电子邮件ID时需要使用密钥和密钥,例如:user @ cosnumerkey。这是我们使用双腿认证过程的唯一场景。 – JAVAC 2010-10-29 06:39:41
为什么不使用现有的库? – 2010-11-23 17:22:55