Тема: Проблема с обновлением в ajax

И так, прошу помощи уважаемые коллеги, особенно те кто очень хорошо разбираются в js и технологии ajax. Проблема в следующем: на сайте радио есть блок где показывается текущий играющий трек, информация обновляется путем технологии ajax и запроса каждые 20 секунд. Все работает отлично, есть только одна проблема, которая вымораживает лично меня... это проблема которая возникает по истечении некоторого времени после запуска страницы. часть страницы постоянно обновляется и как мне кажется постоянно кэшируется и соответственно начинает тупить...

Как я понимаю решить ее можно на уровне ajax запроса,  поставил cache: false но похоже это немного не то и не работает так как нужно...

Что делать?

код ajax:

                <div id="show"><span id='unff'></span></div>
                <script>

function show()

{

    $.ajax({

        url: "demo.php",

        cache: false,

        success: function(html){

            $("#show").html(html);

        }

    });

}

    $(document).ready(function(){

        show();
 
        setInterval('show()',20000);     
    
    });
document.getElementById('unff').innerHTML = 'Загрузка...';
</script>

2

Re: Проблема с обновлением в ajax

в js и технологии ajax.

а тут помимо еще и jQuery который я ненавижу(
в документации заявлено что cache: false отключает кэш, если все ровно кэширует значит еще один повод ненавидить jQuery

Re: Проблема с обновлением в ajax

пишет tarasian666:

в js и технологии ajax.

а тут помимо еще и jQuery который я ненавижу(
в документации заявлено что cache: false отключает кэш, если все ровно кэширует значит еще один повод ненавидить jQuery

Зря хорошая штука...
Но вот как исправить ума не приложу... потому-как кеша получается реально много

4

Re: Проблема с обновлением в ajax

А почему не хочешь обновлять просто с помощью ява. Можно один блок, без перезагрузки страницы.  Результат тотже.

<script type="text/javascript">
var auto_refresh = setInterval(
function ()
{
$('#refresh').load('/=' +Math.random()).fadeIn("slow");
//#stati - div, куда будет выводиться информация
//static.php - скрипт, выводящий необходимую нам информацию
}, 10000); //интервал обновления, в миллисекундах
</script>

Отредактировано UAFM (15-07-2012 15:15:56)

http://uafm.org - UKRAINIAN INTERNET RADIO STATION

5

Re: Проблема с обновлением в ajax

у меня точно такая же трабла. я тоже попытался отрубить кеш но результат аналогичный. что касается предложенным ява вариантом то и он не сработает пока к странице подключен jquery . вы должны прекрасно понимать что jq основан на яве а значит имеет его обычаи. я вот задумываюсь уже и не копать в сторону jq а попробовать очищать кеш при помощи php. буду неимоверно благодарен если кто то подскажет куда копать

6

Re: Проблема с обновлением в ajax

Попробуйте Cache Buster.

url: "demo.php?rnd="+Math.random(),

У UAFM, кстати, уже есть в коде.

7

Re: Проблема с обновлением в ajax

Сколько пользуюсь jquery+ajax, никогда проблем с кешем не возникало smile
Для статики (html, txt, json, etc), да, вырубаем кеш и не лишнем будет прописан рандом в конце URL к файлу вида track.html?r=(рандом).
Для php же, вообще можно кеш оставлять включенным по умолчанию.

Radiodev - coming soon.