jsonp with jquery

akula1001 picture akula1001 · Apr 21, 2010 · Viewed 79.9k times · Source

Can you give a very simple example of reading a jsonp request with jquery? I just can't get it to work.

Answer

Tomas Sedovic picture Tomas Sedovic · Apr 21, 2010

Here is working example:

<html><head><title>Twitter 2.0</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
</head><body>
<div id='tweet-list'></div>
<script type="text/javascript">
$(document).ready(function() {
    var url =  "http://api.twitter.com/1/statuses/user_timeline/codinghorror.json";
    $.getJSON(url + "?callback=?", null, function(tweets) {
        for(i in tweets) {
            tweet = tweets[i];
            $("#tweet-list").append(tweet.text + "<hr />");
        }
    });
});
</script>
</body></html>

Notice the ?callback=? at the end of the requested URL. That indicates to the getJSON function that we want to use JSONP. Remove it and a vanilla JSON request will be used. Which will fail due to the same origin policy.

You can find more information and examples on the JQuery site: http://api.jquery.com/jQuery.getJSON/