У меня есть простое поле ввода, которое возвращает результаты, когда вы их ищете, используя Trakt API. Недавно они изменили свой API, и теперь мой код больше не работает (он использовал). Я получаю этот вопрос:Проблема с обратным вызовом API JSON
Refused to execute script from http://.... because its MIME type ('application/json') is not executable, and strict MIME type checking is enabled.
КОД:
$.ajax ({
type: "GET",
// **OBSOLETE** url: 'http://api.trakt.tv/search/shows.json/78c0761c9409a61cf88e675687d6f790/'+ value +'/5/seasons/',
url: 'http://api.trakt.tv/search/shows.json/78c0761c9409a61cf88e675687d6f790?query=' + value + '&limit=5&seasons=true',
dataType: "jsonp",
json: "callbackname",
crossDomain : true,
Если удалить:
dataType: "jsonp",
или изменения:
dataType: "json",
Я получаю различная ошибка:
XMLHttpRequest cannot load http://.... No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'https://dl.dropboxusercontent.com' is therefore not allowed access.
Демо:http://dl.dropboxusercontent.com/u/48552248/websites/tiii.me/index.html («нагрузка небезопасным сценарий», если https: // принудительно)
Ссылка на код:https://dl.dropboxusercontent.com/u/48552248/websites/tiii.me/scripts/partials/_tv-show.js
Любые идеи? Благодаря!
только потому, что API служит JSON, это не значит, что CORS включен или что он будет обслуживать jsonp. Прочтите документы API, и если ни один из подходов не доступен, используйте прокси-сервер. – charlietfl
попробуйте правильно настроить параметры. прочитайте ajax docs – charlietfl
, вы даже можете создать свой собственный прокси с php и вернуть json или jsonp в свое удобство – JFK