Обрабатывать кэш из обновленных изображений с тем же именем - PullRequest
0 голосов
/ 17 мая 2019

На моем сервере я выставляю некоторые статические ресурсы, одним из которых является изображение профиля от пользователей.

const express = require('express');

const serve = express();

function cacheControl(res, path, stat) {
  res.header('Cache-Control', ['no-cache', 'public']);
}

serve.use(
  express.static('directory', {
    setHeaders: cacheControl
  })
);

Так что на внешнем интерфейсе, когда вы получите информацию о пользователе, он вернет URL-адрес изображения, который будет чем-токак это:

https://localhost:4000/root/directory/userprofile/${userId}.${extension}

Когда пользователь обновляет свой профиль, он отправляет новое изображение toto.png Я изменяю имя файла для userId так: ${userId}.png

Когда файл загружается извеб, изображение не изменится вообще, потому что от URL это будет тот же путь.Браузер по-прежнему будет использовать кэшированное изображение из первого запроса.(Только если я изменю имя расширения, изображение будет перезагружено).

Я могу переименовать мой файл для ${userId}-${Date}.${extention}, но я бы хотел обработать его с заголовком http.Я попытался установить некоторый заголовок управления кэшем, но он все еще не загружается на мой сервер и не использует кеш.

edit: мой сервер и фронт не находятся в одном источнике, и у меня есть прокси сверхусервера

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