I am attempting to call the batch lookup method (http://
dev.twitter.com/doc/get/users/lookup) using JavaScript. I've
successfully managed to authorize the user and obtain an Access token
etc. and I'm not attempting to make the data request:

var TEST_IDS =
escape("[21495828,20128230,15798970,12374722,39745560]");
var LOOKUP_URL = 'http://api.twitter.com/1/users/lookup.json';
    var oauth_nonce = getNonce(); //Returns a random nonce. Confirmed
as working OK
    var newtimestamp = getTimeStamp(); //Confirmed as working OK
    var baseString = "POST&http%3A%2F%2Fapi.twitter.com%2F1%2Fusers
%2Flookup.json&oauth_consumer_key%3D" + oauth_consumer_key +
                "%26oauth_nonce%3D" + oauth_nonce +
                "%26oauth_signature_method%3DHMAC-
SHA1%26oauth_timestamp%3D" + newtimestamp +
                "%26oauth_token%3D" + authentication.oauth_token +
                "%26user_id%3D" + TEST_IDS;

    var oauth_signature_base = oauth_consumer_secret + "&" +
authentication.oauth_token_secret;
    var oauth_signature = b64_hmac_sha1(oauth_signature_base,
baseString);
    var key = "oauth_consumer_key=" + oauth_consumer_key;
    var method = "&oauth_signature_method=" + oauth_signature_method;
    var signature = "&oauth_signature=" + oauth_signature;
    var timestamp = "&oauth_timestamp=" + newtimestamp;
    var nonce = "&oauth_nonce=" + oauth_nonce;
    var oauth_token = "&oauth_token=" + authentication.oauth_token;
    var list = "&user_id=" + TEST_IDS;

    var postdata = key + nonce + signature + method + timestamp +
oauth_token + list;

    //Make our request
    var req = new Ajax.Request(LOOKUP_URL, {
        method: 'post',
        evalJSON: 'true',
        postBody: postdata,
        contentType: 'application/x-www-form-urlencoded',
        onComplete: function(response) {
            ListRequestComplete(response);
        }
    });


However, the above is returning the following from the API:

{"error":"Incorrect signature","request":"\/1\/users\/lookup.json"}

I've confirmed that the authentication object contains the token and
token_secret correctly received from the AccessToken process, so I
don't know what I'm doing wrong here.
Can anyone advise what I'm doing wrong in my signature to make the
above request?

Thanks

-- 
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk

Reply via email to