home_timeline API的Twitter分页无法正常工作

时间:2016-11-14 10:22:02

标签: java android twitter twitter-oauth twitter-timeline

我正在使用twitter home_timeline API来显示推文。
第一次运行它时它工作正常,但是当我再次调用它(拉动加载更多)时,它没有响应。我正在通过auth标题,并且在params中我通过了计数,它也不起作用。
我不知道我卡在哪里..
这是拉推文的代码:

if (auth != null && auth.token_type.equals("bearer")) {

    HttpGet httpget = new HttpGet(TwitterStreamURL);

    String oAuthConsumerKey = CONSUMER_KEY;
    String oAuthConsumerSecret = CONSUMER_SECRET;

    String oAuthAccessToken = HomeActivity.twitter_access_token;
    String oAuthAccessTokenSecret = HomeActivity.twitter_access_token_secret;

    String oAuthNonce = String.valueOf(System.currentTimeMillis());
    String oAuthSignatureMethod = "HMAC-SHA1";
    String oAuthTimestamp = time();
    String oAuthVersion = "1.0";
    String signatureBaseString1 = methods;
    String signatureBaseString2 = TwitterStreamURL;
    String signatureBaseString3Templ = "oauth_consumer_key=%s&oauth_nonce=%s&oauth_signature_method=%s&oauth_timestamp=%s&oauth_token=%s&oauth_version=%s";
    String signatureBaseString3 = String.format(signatureBaseString3Templ,
            oAuthConsumerKey,
            oAuthNonce,
            oAuthSignatureMethod,
            oAuthTimestamp,
            oAuthAccessToken,
            oAuthVersion);

    String signatureBaseStringTemplate = "%s&%s&%s";
    try {
        signatureBaseString = String.format(signatureBaseStringTemplate,
                URLEncoder.encode(signatureBaseString1, "UTF-8"),
                URLEncoder.encode(signatureBaseString2, "UTF-8"),
                URLEncoder.encode(signatureBaseString3, "UTF-8"));
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    }

    try {
        compositeKey = URLEncoder.encode(oAuthConsumerSecret, "UTF-8") + "&" + URLEncoder.encode(oAuthAccessTokenSecret, "UTF-8");
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    }

    try {
        String oAuthSignature = computeSignature(signatureBaseString, compositeKey);

        oAuthSignatureEncoded = URLEncoder.encode(oAuthSignature, "UTF-8");

        String authorizationHeaderValueTempl = "OAuth oauth_consumer_key=\"%s\", oauth_nonce=\"%s\", oauth_signature=\"%s\", oauth_signature_method=\"%s\", oauth_timestamp=\"%s\", oauth_token=\"%s\", oauth_version=\"%s\"";

        String authorizationHeaderValue = String.format(authorizationHeaderValueTempl,
                oAuthConsumerKey,
                oAuthNonce,
                oAuthSignatureEncoded,
                oAuthSignatureMethod,
                oAuthTimestamp,
                oAuthAccessToken,
                oAuthVersion);
    } catch (Exception e) {
        e.printStackTrace();
    }


    String vf = "oauth_consumer_key=" + oAuthConsumerKey + ",oauth_signature_method=" + oAuthSignatureMethod + ",oauth_timestamp=" + oAuthTimestamp + ",oauth_nonce=" + oAuthNonce + ",oauth_version=" + oAuthVersion + ",oauth_token=" + oAuthAccessToken + ",oauth_signature=" + oAuthSignatureEncoded + "";
    httpget.setHeader("Authorization", "OAuth " + "oauth_consumer_key=" + oAuthConsumerKey + ",oauth_signature_method=" + oAuthSignatureMethod + ",oauth_timestamp=" + oAuthTimestamp + ",oauth_nonce=" + oAuthNonce + ",oauth_version=" + oAuthVersion + ",oauth_token=" + oAuthAccessToken + ",oauth_signature=" + oAuthSignatureEncoded + "");
        httpget.setHeader("Content-Type", "application/json");

    // update the results with the body of the response
    checkTwitRes = true;
    results = getResponseBody(httpget);
}

1 个答案:

答案 0 :(得分:-1)

div {
    color:#000;
    font-weight:800
}

p {
    color:red;
    background:url("mypicture.png")
}