Проблемы с получением данных в формате JSON из API tmi.twitch.tv

Проблема в том, что когда я пытаюсь использовать этот код для получения журнала из API tmi.twitch.tv, используя URL-адрес: http://tmi.twitch.tv/hosts?include_logins=1&target=70219146 я получаю непредвиденный токен системной ошибки. Код:

 $(document).ready(function() {
         $.getJSON("http://tmi.twitch.tv/hosts?include_logins=1&target=70219146&callback=?", function (data) {
          console.log(data.hosts)  
});
    })

Я могу получить данные, используя массив php и json следующим образом:

$json_array = json_decode(file_get_contents('http://tmi.twitch.tv/hosts?include_logins=1&target=70219146'), true);
echo $json_array['hosts']['0']['host_login']."</br>";

Но разве нет способа использовать это в html? Благодарность


person user3607950    schedule 03.05.2015    source источник


Ответы (1)


Вы пытаетесь запросить обычный JSON как JSONp (&callback=? активирует метод запроса JSONp jQuery), который фактически встраивает ответ в <script> для его выполнения. Однако API twitch по-прежнему возвращает JSON, который не является допустимым JavaScript. Если нет способа заставить tmi.twitch.tv возвращать действительный JSONp, это невозможно сделать напрямую из JavaScript, если вы не используете прокси-сервер, такой как http://crossorigin.me/.

person trumank    schedule 03.05.2015