Как кешировать все запросы в браузере? - PullRequest
0 голосов
/ 19 ноября 2018

Мой Webapp - React -> .NET -> SQL

Я хочу кешировать все почтовые запросы так, чтобы все вызовы .NET выполнялись только один раз, в следующий раз, когда они поступают из кеша. Для каждого небольшого изменения пользовательского интерфейса я хочу использовать кеш и экономить время разработки.

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

1 Ответ

0 голосов
/ 20 ноября 2018

Как насчет использования chrome.storag.local API, где вы можете хранить, извлекать и отслеживать изменения в пользовательских данных.

Вы можете использовать его, основываясь на этом SO сообщении :

function fetchLive(callback) {
  doSomething(function(data) {
    chrome.storage.local.set({cache: data, cacheTime: Date.now()}, function() {
      callback(data);
    });
  });
}

function fetch(callback) {
  chrome.storage.local.get(['cache', 'cacheTime'], function(items) {
    if (items.cache && items.cacheTime && items.cacheTime) {
      if (items.cacheTime > Date.now() - 3600*1000) {
        return callback(items.cache); // Serialization is auto, so nested objects are no problem
      }
    }

    fetchLive(callback);
  });
}

Просто помните, что:

Chrome использует два кэша - кэш на диске и очень быстрый кэш в памяти .Время жизни кэша в памяти привязано к времени жизни процесса рендеринга, что примерно соответствует вкладке.Запросы, полученные из кеша в памяти, невидимы для API веб-запроса.

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