1

所以我决定试一试 Twitter Streaming api,所以我去了 twitter 开发页面并创建了一个测试应用程序,生成了我的 oAuth 令牌,然后我在终端中使用 curl 命令尝试了它,我得到了流很好,但是后来我决定尝试编写一小段java代码片段来做同样的事情,然后我遇到了问题。

下面是我的代码,我已经删除了我的令牌和授权码,用 * 而不是真实的。

public final static void main(String[] args) throws Exception {

    HttpClient httpclient = new DefaultHttpClient();

    try {
        HttpPost post = new HttpPost(
                "https://stream.twitter.com/1/statuses/sample.json");
        final String header = "OAuth oauth_consumer_key=\"********\", oauth_nonce=\"*******", oauth_signature=\"**************", oauth_signature_method=\"HMAC-SHA1\", oauth_timestamp=\"1339160825\", oauth_token=\"*********", oauth_version=\"1.0\"";
        final String headerTitle = "Authorization";
        post.addHeader(headerTitle, header);
        ResponseHandler<String> responseHandler = new BasicResponseHandler();
        String responseBody = httpclient.execute(post, responseHandler);
        System.out.println("----------------------------------------");
        System.out.println(responseBody);
        System.out.println("----------------------------------------");
    } catch (HttpResponseException e) {
        System.out.println("Reponse status code: " + e.getStatusCode()
                + "\n");
        e.printStackTrace();
        httpclient.getConnectionManager().shutdown();
    }
}

我还删除了导入行。

我不断收到 401 响应,可能是我对标题做错了。

先感谢您。

4

0 回答 0