Как добавить перехватчик для каждого запроса, чтобы сохранить, например, от кэширования запросов - PullRequest
0 голосов
/ 21 мая 2018

Internet Explorer кеширует http запросы.Вместо того, чтобы вручную добавлять заголовок к каждой отдельной функции, я хочу сделать что-то вроде этого

axios.interceptors.request.use((config): AxiosRequestConfig => {
return addNoCachingHeader(config);
  });

и

const addNoCachingHeader = (config: AxiosRequestConfig): AxiosRequestConfig => {
  return { ...config, headers: { ...config.headers, Pragma: "no-cache"} };
};

, есть простой способ удержать IE от кэширования запросов без возвратачерез все мое приложение и добавление заголовков к каждому отдельному запросу?

Ответы [ 2 ]

0 голосов
/ 22 мая 2018

Я думаю, что использование общего клиентского подхода было бы лучше здесь.

const client = axios.create({
  baseURL,
  timeout: 5000,
  responseType: 'json',
  headers: { Pragma: "no-cache" },
});

И для использования в других местах импортируйте клиент и вызовите client.get или client.post

, если вы хотите переопределить заголовки в какой-то момент, сделайте это функцией

const client = (headers) => axios.create({
  baseURL,
  timeout: 5000,
  responseType: 'json',
  headers,
});

и использовать как client({ Pragma: 'no-cache' }).get(...)

0 голосов
/ 22 мая 2018

Создайте промежуточное программное обеспечение с заголовком, который вы хотите использовать для всех ваших запросов, и затем пусть ваше приложение использует его с app.use (yourHeaderMiddleware (req, res, next)).

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