Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Query Wikipedia's API using AJAX (XMLHttpRequest)

I am trying to implement a simple request to Wikipedia's API using AJAX (XMLHttpRequest). If I type the url in the address bar of Firefox, I get a neat XML, no sweat there. Yet, calling the exact same url with:

// this is my XMLHttpRequest object
httpObjectMain.open("GET", "http://en.wikipedia.org/w/api.php?action=query&format=xml&prop=langlinks&lllimit=500&titles=kaas", true);
httpObjectMain.send(null);

returns an empty response. According to FireBug, I get a 200 OK response, but the content is just empty.

I suspect I might be missing something on the header of the GET http request.

Help! (and thanks!)

like image 459
Fred Rocha Avatar asked Mar 03 '10 19:03

Fred Rocha


1 Answers

The Wikipedia API does support JSONP. Your query string'll become something like this:

http://en.wikipedia.org/w/api.php?action=query&format=json&callback=test&prop=langlinks&lllimit=500&titles=kaas

But you'll have to build the jsonp handler (or you can use your favorite library to do it), switch to json output format from the xml you choose and create the callback function to parse the result and do the stuff you need on the page.

like image 113
Marco Z Avatar answered Nov 09 '22 03:11

Marco Z