Влияет ли использование сервисного работника в приложении Polymer на переписывание Firebase Hosting? - PullRequest
0 голосов
/ 10 мая 2018

Я пытаюсь добавить некоторые изменения в мой firebase.json для вызова некоторых функций по некоторым путям, но функции вызываются только один раз или иногда в некоторые, казалось бы, случайные моменты времени. Приложение My Polymer использует сервисный работник для предварительного кэширования всех представлений.

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

Кроме того, статус входа в систему имеет какое-либо отношение к этому?

Вот мой firebase.json:

{
  "database": {
    "rules": "database.rules.json"
  },
  "hosting": {
    "public": "build/es5-bundled",
    "rewrites": [
      {
        "source": "**",
        "function": "test"
      }
    ]
  }
}

и моя тестовая функция:

const fs = require('fs');
exports.test = functions.https.onRequest((req, res) => {
    let indexHTML = fs.readFileSync('./hosting/index.html').toString();
    //I tried to limit cache hoping this might solve the issue, don't see any difference
    res.set('Cache-Control', 'public, max-age=10, s-maxage=10');
    res.status(200).send(indexHTML);
})

Редактировать

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

...