I need to use foursquare API to search venues. Of course it is cross-domain.
It has no any problems in Firefox but in Internet Explorer (7, 8, 9 I've tested).
My javascript code looks like:
searchVenues: function(searchQuery) { $.ajax({ url: 'https://api.foursquare.com/v2/venues/search', data: { sw: bound_south_west, ne: bound_north_east, query: searchQuery.query, oauth_token: FSQ_OAUTH_TOKEN, limit: 25, intent: 'browse', v: 20120206 }, cache: false, dataType: 'json', success: function(data) { displayResults(data, searchQuery.query); }, error: function(xhr, status, errorThrown) { console.log(errorThrown+'\n'+status+'\n'+xhr.statusText); } }); }
In Firefox, it perfectly displays received data. In Internet Explorer, it logs on console:
No Transport Error Error
What should I do?
I tested this on Windows Mobile 7.
After LOTS of time spent to understand, I finally found this:
http://bugs.jquery.com/ticket/10660
The Solution is simple, just set this:
$.support.cors = true;
and Ajax cross domain requests will work!
jQuery.support.cors = true; $.ajax({ crossDomain: true, url: "", type: "POST", dataType: "xml", data: soapMessage, });
you need to make the cross domain value to true
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With