Yosi
Yosi

Reputation: 2966

jQuery.getJSON Acess Denied


I am writing a simple bookmarklet that runs on youtube page and fetch some data from the youtube api about the current playing video.
The bookmarket runs on Chrome and Firefox,but on IE(currently tested only on IE9) I am getting error from the next code :

jQuery.support.cors = true;
$.getJSON('https://gdata.youtube.com/feeds/api/videos/' + vid + '?v=2&alt=json',YoutubeBookmarklet.handle_gdata_obj)
.error(function(xhr, ajaxOptions, thrownError) {
    console.log(thrownError);
});

The first error I got was "No Transport",by the help of stackoverflow I saw that I need to add jQuery.support.cors = true in order to fix it,after adding it I am getting another error : "Access is denied."

I tried to use the IE XDomainRequest,but I get the same error.
What to do?

Upvotes: 3

Views: 7283

Answers (2)

Yosi
Yosi

Reputation: 2966

I fixed it using JSONP in order to do so i added "&callback=?" to the end of the url.

Upvotes: 3

ShankarSangoli
ShankarSangoli

Reputation: 69905

Looks like a cross domain call, take a look at this hope it will help you.

http://james.padolsey.com/javascript/cross-domain-requests-with-jquery/

Upvotes: 0

Related Questions