IE9 подделывает 304 после получения ETag

У меня возникла проблема с AJAX и Internet Explorer 9: он прекращает опрос нашего сервера после получения ответа на начальный шаг GET.

Он претендует на выдачу запросов с ответом вроде "Response HTTP/1.1 304 Not Modified, Status 200 OK" (да, два разных кода состояния в одном ответе) и тот же ETag (который должен меняться со временем), но ни один из них на самом деле отображается в журналах сервера.

Эта проблема появляется только в IE, тот же код отлично работает в Chrome и FF.

Возможно, передача {cache: false} в jQuery.ajax() может помочь, но я хотел бы знать, есть ли способ решить проблему на стороне сервера.

В нашем использовании ETag может быть ошибка.

Спасибо!

Ответ 1

Я полагаю, эта статья будет полезна для вас: http://www.dashbay.com/2011/05/internet-explorer-caches-ajax/

Проблема заключается в кешировании AJAX. Вы должны запретить это в любом случае для необходимого запроса.