Вход

Просмотр полной версии : Очистка кэша


JetStar
17.10.2016, 18:05
По запросу пользователя через ajax подгружаются видосы, но проблема в том, что после загрузки нескольких видосов ajax запросы выдают 403 ошибку. На сколько я понял, это может быть связанно с тем, что забивается кэш. Как можно очищать кэш браузера средствами javascript?

laimas
17.10.2016, 18:17
Кеш тут не причем - 403, Forbidden, запрещен доступ.

JetStar
17.10.2016, 18:37
А аз-за чего может выдавать 403? я пытаюсь загрузить видос, который загружал пару запросов назад, но мне бьет 403.

warren buffet
17.10.2016, 18:42
Лимит закачек может быть зохавал.

С кешем так примерно. Если файл в кеше, браузер пошлет запрос с датой, а сервер может ответить - без изменений - и браза тогда берет из кэша.

Кэш не может переполнится. Там все автоматически регулируется.

laimas
17.10.2016, 19:08
А аз-за чего может выдавать 403?

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

JetStar
18.10.2016, 10:20
Вот код аякса

function csrfSafeMethod(method) {
return (/^(GET|HEAD|OPTIONS|TRACE)$/.test(method));
}

$.ajax ({
url: '/dog-command/',
type: "POST",
data: json,
headers: {
"Cache-Control": "no-cache, no-store, must-revalidate",
"Pragma": "no-cache",
"Expires": "0"
},
dataType: "json",
contentType: "application/json; charset=utf-8",
beforeSend: function(xhr, settings) {
if (!csrfSafeMethod(settings.type) && !this.crossDomain) {
xhr.setRequestHeader("X-CSRFToken", csrftoken);
}

},
success: function(data){
// тут грузим видео
}
});

Aetae
18.10.2016, 14:24
Сказано же: дело не в клиенте, а в сервере.
Не любит он когда подряд грузят у него видео и блокирует тебе запросы.
Если сервер твой - смотри настройки безопасности.
Если чужой, то по-хорошему надо почитать политику того сайта. Возможно нужно использовать специальный API. Или надо договариваться с владельцами. По-плохому: можно поэкспериментировать с задержкой между загрузками, подставлением разных UserAgent итд.)

laimas
18.10.2016, 16:47
headers: - это заголовки запроса, а заголовки

"Cache-Control": "no-cache, no-store, must-revalidate",
"Pragma": "no-cache",
"Expires": "0"

отправляются браузеру сервером для запрета кеширования контента. Чего вы пытаетесь добиться отправляя эти заголовки серверу?