Почему не обновляются данные, получаемые через ajax?

Здравствуйте! Возникла следующая проблема. На сервере стабильно работал код, который получал данные(ajax) и выводил их на страницу. Он до сих пор и работает нормально, только вот после перехода на хостинг от CloudFlare возникла проблема. Данные загружаются только один раз, потом они не обновляются(стоит SetInterval на 15 секунд). Заметьте, точно такой же год стабильно работает на другом сервере, не от CloudFlare. В ПУ CloudFlare кеширование полностью отключено. Rocketscript тоже.
function GetRadioInfo() {
    $.ajax({
        type: "GET",
        url: "icecast.php",
        async: true,
        jsonpCallback: "parseMusic",
        contentType: "application/json",
        dataType: "json",
        success: function(a) {
            $("#main-track-title").text(a.track_url)
        }
    })
}
$(document).ready(function() {
    setTimeout(function() {
        GetRadioInfo()
    }, 5000), 
    setInterval(function() {
        GetRadioInfo()
    }, 15000)
});

<?php 
$json_de = json_decode(file_get_contents("http://88.88.88/info.xsl"), true);
echo json_encode(array('track_url' => $json_de['/mount']['title']));
?>

Если смотреть в инспекторе, что данные в разметке, якобы, обновляются(подсвечиваются, каждые 15 секунд), только вот не меняются. Если обращаться напрямую к php-скрипту(через url в браузере), там данные обновленные.
  • Вопрос задан
  • 417 просмотров
Решения вопроса 1
bingo347
@bingo347 Куратор тега JavaScript
Crazy on performance...
Скорее всего кэш браузера, самое простое добавить рандом к запрашиваемому url
$.ajax({
        type: "GET",
        url: "icecast.php?" + Math.random(),
        async: true,
        jsonpCallback: "parseMusic",
        contentType: "application/json",
        dataType: "json",
        success: function(a) {
            $("#main-track-title").text(a.track_url)
        }
});
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы