我正在尝试在我的 Google 应用程序中实现 OpenID + OAuth 混合协议。我正在获取请求令牌。因此,作为联合登录中的文档的下一步是交换请求令牌以获取访问令牌。
我使用 OAuth java 库尝试了它,但我没有获得访问令牌。我正在尝试 3 条腿和 2 条腿的方法都没有成功。
有没有人成功地做混合协议。
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 Token 异常我不知道为什么它说 Invalid AuthSub。