Internet Explorer 7 Ajax связывает только загрузку однажды

Делая быстрый поиск по Scaladoc , я нашел эту функцию reverse , которая делает именно это.

import org.apache.spark.sql.{functions => sqlfun}
val df1 = ...
val df2 = df1.withColumn("columnName", sqlfun.reverse($"columnName"))

13
задан stillinbeta 28 October 2008 в 21:24
поделиться

6 ответов

Это происходит, потому что Internet Explorer игнорирует директиву без кэшей и кэширует результаты вызовов ajax. Затем если следующий запрос будет идентичен, то он просто подаст кэшированную версию. Существует легкое обходное решение, и это должно просто добавить случайную строку на конце Вашего запроса.

 xmlHttp.open("GET","blurb.php?"+Math.random();
16
ответ дан 1 December 2019 в 21:12
поделиться

Проблема состоит в том, что IE делает дурацкие вещи, когда обработчик ответов установлен прежде open назван. Вы не делаете этого для первого запроса xhr, но так как Вы снова используете объект xhr, когда второе открытое называют, обработчик ответов уже установлен. Это может сбивать с толку, но решение просто. Создайте новый объект xhr для каждого запроса:

переместитесь:

var xmlHttp = new XMLHttpRequest();

в избранной функции.

3
ответ дан 1 December 2019 в 21:12
поделиться

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

Заголовки, которые я отправляю, чтобы быть уверенным, что это не кэшируется:

Pragma: no-cache
Cache-Control: no-cache
Expires: Fri, 30 Oct 1998 14:19:41 GMT

Обратите внимание, что дата истечения срока может быть любым временем в прошлом.

6
ответ дан 1 December 2019 в 21:12
поделиться

Считайте раздел No Problems в [тексте ссылки] [1] [1]: http://en.wikipedia.org/wiki/XMLHttpRequest

1
ответ дан 1 December 2019 в 21:12
поделиться

Заголовок ответа, который лучше всего работал для меня в случае IE AJAX: Истекает: -1 , что, вероятно, не соответствует спецификации, но упоминается в статье поддержки Microsoft ( Как предотвратить кэширование в Internet Explorer ). Это используется в сочетании с Cache-Control: no-cache и Pragma: no-cache .

1
ответ дан 1 December 2019 в 21:12
поделиться

xmlHttp.open ("ДОБИРАЮТСЯ", "blurb.php?" +Math.random ();

Я соглашаюсь с этим.. это работает отлично решением этой проблемы. проблема состоит в том, что кэширование IE7 URL было ужасно, игнорируя заголовок без кэшей и сохраняет ресурс к своему кэшу с помощью его URL в качестве ключевого индекса, таким образом, лучшее решение состоит в том, чтобы добавить случайный параметр к ПОЛУЧИТЬ URL.

0
ответ дан 1 December 2019 в 21:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: