2
votes

I want to load in a user's home timeline after authenticating through 'sign it with twitter' using OAuth. I'm using this library to handle the authentication part https://github.com/jmathai/twitter-async

The authentication part is working fine but I'm unclear about how to send requests to twitter api as the given authenticated user. I want to make an ajax request for for the user's home timeline like this:

// this call produces "is not allowed by Access-Control-Allow-Origin" error
$.getJSON("http://api.twitter.com/1/statuses/home_timeline.json", function(json) {
  console.log(json);
});

So my question is how do I send the user's access token along with my request and where is the token stored? Or am I approaching this problem wrong?

1
You've been blocked by the Same origin policy. You need to convert this to a JSONP request.Rocket Hazmat
That library is a PHP library, and the provided code is JavaScript. You'll need to use a JavaScript OAuth library, if you want JavaScript to make API calls.Rocket Hazmat

1 Answers

3
votes

You need to make this request into a JSONP request, so you can do cross-domain AJAX.

$.getJSON("http://api.twitter.com/1/statuses/home_timeline.json?callback=?", function(json) {
  console.log(json);
});

The ?callback=? converts this into a JSONP request.

The link you provided is for a PHP library. If you want to make API calls in JavaScript, you need to use a JavaScript OAuth library.