-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Closed
Description
Hello. I have code:
private final AsyncHttpClient asyncHttpClient = new DefaultAsyncHttpClient(
new DefaultAsyncHttpClientConfig.Builder()
.setUserAgent(null)
.setKeepAlive(true)
.setUseNativeTransport(Epoll.isAvailable())
.build()
);
//@Ignore("requires real credentials")
public void testSend() throws Exception {
TwitterProperties twitterProperties = new TwitterProperties(Collections.emptyMap());
TwitterWrapper twitterWrapper = new TwitterWrapper(twitterProperties, asyncHttpClient);
String userToken = "xxx";
String userSecret = "xxx";
String message = "Hello!";
twitterWrapper.send(userToken, userSecret, message,
new AsyncCompletionHandler<Response>() {
@Override
public Response onCompleted(Response response) throws Exception {
if (response.getStatusCode() != HttpResponseStatus.OK.code()) {
System.out.println("Error sending twit. Reason : " + response.getResponseBody());
}
assertEquals(200, response.getStatusCode());
return response;
}
@Override
public void onThrowable(Throwable t) {
t.printStackTrace();
System.out.println("Error sending twit.");
}
});
}
public void send(String token, String secret, String message,
AsyncCompletionHandler<Response> handler) {
asyncHttpClient
.preparePost(TWITTER_UPDATE_STATUS_URL)
.addQueryParam("status", message)
.setSignatureCalculator(new OAuthSignatureCalculator(consumerKey, new RequestToken(token, secret)))
.execute(handler);
}
It works fine with 2.4.4, but not with 2.4.5. Have you changed some code with OAuthSignatureCalculator
recently?
Twitter returns "not autorized" error with the latest version. It may be connected with order of the params of request.