Google Chrome последние (v55.0.2883.87) В этом файле (sw.js) есть различные события. Каждый раз, когда запрашивается файл, запрашивается событие fetch. Как и когда происходят другие события (синхронизация, push) (веб-уведомление api). Я хочу отладить его. Есть ли доступный документ?Сервис-файл рабочего файла офлайн-события
Update: server-key-from-firebase-console
subscription-key-after-subscribing-web-notification
Найдено как толчок уведомление fired--
String url = "https://fcm.googleapis.com/fcm/send";
URL obj = new URL(url);
HttpsURLConnection con = (HttpsURLConnection) obj.openConnection();
//add reuqest header
con.setRequestMethod("POST");
con.setRequestProperty("Authorization", "key=<server-key-from-firebase-console>");
con.setRequestProperty("Content-Type", "application/json");
String urlParameters = "{\"to\":\"<subscription-key-after-subscribing-web-notification>\"}";
// Send post request
con.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(con.getOutputStream());
wr.writeBytes(urlParameters);
wr.flush();
wr.close();
int responseCode = con.getResponseCode();
System.out.println("\nSending 'POST' request to URL : " + url);
System.out.println("Post parameters : " + urlParameters);
System.out.println("Response Code : " + responseCode);
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
//print result
System.out.println(response.toString());
Update 2: Хорошо, теперь я нашел, как огонь синхронизации события в рабочий файл службы либо из инструмента отладки Google Chrome, либо из javascript. Ниже приведен код, который я нашел в блоге Google post.
// Register your service worker:
navigator.serviceWorker.register('/sw.js');
// Then later, request a one-off sync:
navigator.serviceWorker.ready.then(function(swRegistration) {
return swRegistration.sync.register('myFirstSync');
});
Затем прослушивайте событие в /sw.js
:
self.addEventListener('sync', function(event) {
if (event.tag == 'myFirstSync') {
event.waitUntil(doSomeStuff());
}
});
Вы также можете прослушивать уведомления: 'self.addEventListener ('push', (event) => {});'. Уведомление повышается, когда вы отправляете уведомление через Firebase Notifications, например. – Hosar