jQuery Отключение кеша ajax не работает?

Я разрабатываю Расширение Firefox, которое использует ajax-запрос для получения информации. Это код:

$.ajax({
        url: "http://127.0.0.1/foo/bar/Service?wsdl" + new Date().getTime(),
        beforeSend: function(request) { request.setRequestHeader("SOAPAction", "Group"); },         
        async: false,
        cache: false,
        type: "POST",   
        dataType: "xml",
        data: req,
        contentType: "text/xml; charset=\"utf-8\"",
        success: function (data, textStatus, xmlHttpRequest) {
        out = $(xmlHttpRequest.responseXML);
        }
    }); 

Я все еще получаю тот же результат, когда данные, отправляемые на сервер, изменяются. Я попытался избежать этого, добавив «new Date ( ) .getTime () "в URL и" cache: false ". Похоже, это не работает. После перезапуска браузера я получаю правильные результаты.

Кто-нибудь знает, в чем проблема? Есть ли какая-то обработка сеанса, чтобы сервер все равно возвращал старый ответ?

Редактировать: Я провел много тестов и отладок, и я думаю, что обнаружил проблему: файл cookie сохраняется с каждым ajax-запросом который содержит идентификатор сеанса, поэтому каждый раз, когда я снова выполняю запрос, сервер отправляет данные сеанса с идентификатором сеанса в cookie. Действительно плохое поведение, я не знал, что файлы cookie могут быть созданы с помощью ajax-запроса. Поэтому все, что мне нужно сделать, чтобы решить проблему, - это функция, которая удаляет этот файл cookie каждый раз, когда меняются мои параметры. Еще раз спасибо за вашу помощь.

6
задан Bob 5 December 2010 в 12:53
поделиться