Skip to content

Regression introduced in the latest 2.4.5 version #1540

@doom369

Description

@doom369

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.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions