AJAX не показывает изменения в объекте JSON при использовании getJSON [duplicate]

Мы не можем привязать это к setTimeout(), поскольку он всегда выполняется с глобальным объектом (Window), если вы хотите получить доступ к контексту this в функции обратного вызова, а затем с помощью bind() к функции обратного вызова, которую мы можем достичь как:

setTimeout(function(){
    this.methodName();
}.bind(this), 2000);
17
задан sof_dff 3 December 2015 в 14:02
поделиться

1 ответ

ОК,

, наконец, он работал с этим:

@app.after_request
def add_header(r):
    """
    Add headers to both force latest IE rendering engine or Chrome Frame,
    and also to cache the rendered page for 10 minutes.
    """
    r.headers["Cache-Control"] = "no-cache, no-store, must-revalidate"
    r.headers["Pragma"] = "no-cache"
    r.headers["Expires"] = "0"
    r.headers['Cache-Control'] = 'public, max-age=0'
    return r

Если вы добавите это, эта функция вызывается после каждого выполненного запроса. Пожалуйста, см. здесь

Я был бы счастлив, если бы кто-нибудь мог объяснить мне, почему это переписывание заголовков не работает из обработчика страницы?

Спасибо.

32
ответ дан sof_dff 22 August 2018 в 13:29
поделиться
  • 1
    Вы сказали браузеру не кэшировать ответ, содержащий содержимое video.html. Вам нужно сказать, чтобы он не кэшировал ответ, содержащий сам фрейм. – dirn 3 December 2015 в 16:16
  • 2
    Обратите внимание, что вы переписываете r.headers["Cache-Control"] из первой строки во второй последней строке. Таким образом, ваш ответ будет иметь только 'public, max-age=0' для Cache-Control – k-nut 5 October 2016 в 15:05
Другие вопросы по тегам:

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