JQuery Ajax кеширование - PullRequest
6 голосов
/ 16 марта 2011

Я делаю несколько вызовов Ajax, чтобы получить файлы через jQuery, например:

$.ajax({
        url: "/resx.mvc",
        data: {
            virtualPath: options.virtualPath,
            keys: options.keys,
            global: options.global
        },
        cache: true,
        success: function (values) {
            $.extend(assignTo, values);
        },
        dataType: "JSON",
        traditional: true
    });

Когда я смотрю на запрос в Fiddler, я вижу, что эти два заголовка отправляются, и создается мой ASP.NET отправляет обратно заголовок expires на свой ответ с -1:

Pragma: no-cache
Cache-Control: no-cache

Как я могу сказать jQuery не выдавать no-cache?

1 Ответ

6 голосов
/ 16 марта 2011

beforeSend принимает объект ajax (объект XmlHttpRequest), который вы можете использовать для манипулирования заголовком запроса.Ниже приведен пример установки заголовка в вашем запросе с использованием объекта ajax, возвращенного в обратном вызове:

$.ajax({
            type:"POST",
            beforeSend: function (request)
            {
                request.setRequestHeader("Authority", authorizationToken);
            },
            url: "entities",
            data: "json=" + escape(JSON.stringify(createRequestObject)),
            processData: false,
            success: function(msg) {
                $("#results").append("The result =" + StringifyPretty(msg));
            }
        });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...