Я создал PWA, который извлекает данные из firestore. Я хочу запускать некоторые проверки этих данных каждые пару часов, поэтому я хочу использовать для этого сервисного работника.
Это фрагмент из моего рабочего кода:
billsCollection.orderBy('dayOfMonth', 'asc').onSnapshot(querySnapshot => {
let billsArray = [];
querySnapshot.forEach(doc => {
let bill = doc.data();
bill.id = doc.id;
billsArray.push(bill);
});
store.commit('setBills', billsArray);
});
Если я попытаюсь запустить .onSnapshot в моем сервисном работнике, я получаю сообщение о том, что xmlhttprequest не известен или не похож.
Похоже, что «firebase / app» и «firebase / firestore» используют старый xmlhttprequest для связи с firebase / firestore. Служащие службы поддерживают только новую apetch apetch. Кто-нибудь успешно извлекал данные из firebase / firestore перед использованием нового apetch apetch?
Я хотел бы периодически извлекать данные из firebase с помощью рабочего.
Если это не сработает, можно ли проверить свои данные с помощью функции Cloud Firestore? Я не уверен, поскольку для этого потребуется триггер события времени или аналогичный.
Спасибо всем за ваши идеи, Йоханнес
Редактировать:
Как отметил Скаригами, я могу решить эту проблему, используя службу cron, которая запускает функцию firestore. Это работает. Тем не менее, я все еще ищу способ получить данные из firestore с помощью сервисного работника напрямую. Тогда мне не понадобится сторонняя служба cron или облачные функции и конкретный токен устройства, к которому я хочу отправить сообщение. Он просто извлекал данные, проверял данные, показывал бы уведомление, если это необходимо.
Редактировать:
Я нашел решение! Firestore предлагает отдых api: https://developers.google.com/apis-explorer/#search/firestore/firestore/v1beta1/ С этим я могу получить данные из firestore в моем сервисном работнике, используя apetch fetch.
javascript,firebase,google-cloud-firestore,fetch,service-worker,
Я создал PWA, который извлекает данные из firestore. Я хочу запускать некоторые проверки этих данных каждые пару часов, поэтому я хочу использовать для этого сервисного работника.
Это фрагмент из моего рабочего кода:
billsCollection.orderBy('dayOfMonth', 'asc').onSnapshot(querySnapshot => {
let billsArray = [];
querySnapshot.forEach(doc => {
let bill = doc.data();
bill.id = doc.id;
billsArray.push(bill);
});
store.commit('setBills', billsArray);
});
Если я попытаюсь запустить .onSnapshot в моем сервисном работнике, я получаю сообщение о том, что xmlhttprequest не известен или не похож.
Похоже, что «firebase / app» и «firebase / firestore» используют старый xmlhttprequest для связи с firebase / firestore. Служащие службы поддерживают только новую apetch apetch. Кто-нибудь успешно извлекал данные из firebase / firestore перед использованием нового apetch apetch?
Я хотел бы периодически извлекать данные из firebase с помощью рабочего.
Если это не сработает, можно ли проверить свои данные с помощью функции Cloud Firestore? Я не уверен, поскольку для этого потребуется триггер события времени или аналогичный.
Спасибо всем за ваши идеи, Йоханнес
Редактировать:
Как отметил Скаригами, я могу решить эту проблему, используя службу cron, которая запускает функцию firestore. Это работает. Тем не менее, я все еще ищу способ получить данные из firestore с помощью сервисного работника напрямую. Тогда мне не понадобится сторонняя служба cron или облачные функции и конкретный токен устройства, к которому я хочу отправить сообщение. Он просто извлекал данные, проверял данные, показывал бы уведомление, если это необходимо.
Редактировать:
Я нашел решение! Firestore предлагает отдых api: https://developers.google.com/apis-explorer/#search/firestore/firestore/v1beta1/ С этим я могу получить данные из firestore в моем сервисном работнике, используя apetch fetch.
01JavaScript, firebase, Google-облако-Firestore, принеси, сервис-рабочий,