Результат Ajax кодируется - PullRequest
2 голосов
/ 16 января 2012

У меня есть страница, на которой при загрузке я выполняю несколько запросов POST одновременно, чтобы загрузить виджеты на странице. Запрос выглядит примерно так:

$.ajax({
    type: 'POST',
    contentType: 'application/json',
    dataType: 'html',
    data: JSON.stringify({}),
    success: function(htmlResult) {
        $div.html(htmlResult);
    }
})

Большую часть времени все загружается нормально. Однако иногда один из виджетов загружается с заменяющим символом . Это не один конкретный виджет, с которым это происходит, но это может быть любой из них наугад.

Когда я проверяю неправильный HTTP-ответ, я замечаю, что заголовок Vary имеет значение Accept-Encoding, а тело кодируется. Все остальные ответы имеют значение * для этого заголовка, а тело - text / html. Я явно не устанавливаю значение заголовка Vary в любом месте.

Я не могу понять, что вызывает это случайное поведение. Есть идеи?

К вашему сведению, я отправляю сообщение ASP.NET MVC и возвращаю частичное представление.

1 Ответ

0 голосов
/ 23 февраля 2012

вы пробовали dataType: «json» вместо «html»?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...