我从oltu(version 0.31)
收到了一个问题。我可以成功获取代码和access_token
。但是,如果我访问保护资源,错误说:invalid access token
。当我打印resourceResponse.getBody()
时仍然说无效访问令牌。如果更改为httpclient
或httpURLConnection
一切正常。你能否告诉我我的代码中的错误
public String getUserInfo(String accessToken) throws OAuthSystemException, OAuthProblemException {
System.out.println("Get User info access Token: " + accessToken);
OAuthClient oAuthClient = new OAuthClient(new URLConnectionClient());
System.out.println("111111111111111111111");
OAuthClientRequest bearerClientRequest = new OAuthBearerClientRequest(OauthConfig.userInfo).setAccessToken(accessToken).buildQueryMessage();
System.out.println("22222222222222222222222");
OAuthResourceResponse resourceResponse = oAuthClient.resource(bearerClientRequest, OAuth.HttpMethod.GET, OAuthResourceResponse.class);
System.out.println("3333333333333333333333333");
System.out.println(resourceResponse.getBody());
return resourceResponse.getBody();
}
答案 0 :(得分:0)
关闭了这个问题。我找到了问题。我的服务器访问令牌名称是" accessToken",但oltu默认名称是" access_token"。因此,需要继承OAuthBearerClientRequest并重新编码所有方法。