小编Kar*_*cki的帖子

服务工作者和iOS/Safari

在Chromium关于服务工作者的网页上,有人指出

iOS上的Chrome不支持服务工作者.

我假设它可以使用一些cordova插件传送到iOS.在iOS设备上有没有其他方法可以使用Service Workers?
我担心在iOS上发布新版本和新版本的cordova之间的时间.

有谁知道iOS上的Chrome是否会在未来支持服务工作者?:)

ios service-worker progressive-web-apps

40
推荐指数
3
解决办法
3万
查看次数

如何使用带有FCM的服务工作者进行推送通知

我正在尝试使用Firebase的服务工作者在chrome上实现推送通知.我的网络应用程序中有一个清单文件和一个sw.js文件.我在Firebase中创建了一个项目,并测试了注册和发送通知.除了在接收通知时数据为空,这一切都正常.我不明白为什么,没有任何有用的资源(据我所知!).这是我的服务工作者文件:

self.addEventListener('push', function(event) {
  console.log('Push message', event);
  var title = 'Push message';
  event.waitUntil(
    self.registration.showNotification(title, {
      body: 'The Message',
      icon: 'images/logo.svg',
      tag: 'my-tag'
  }));
});
Run Code Online (Sandbox Code Playgroud)

这是我的main.js文件:

if ('serviceWorker' in navigator) {
  navigator.serviceWorker.register('/sw.js').then(function(registration) {
    // Registration was successful
    console.log('ServiceWorker registration successful with scope: ',    registration.scope);
    registration.pushManager.subscribe({
      userVisibleOnly: true
    }).then(function(sub) {
      console.log('endpoint:', sub.endpoint);
    }).catch(function(e) {

    });
  }).catch(function(err) {
    // registration failed :(
    console.log('ServiceWorker registration failed: ', err);
  });
}
Run Code Online (Sandbox Code Playgroud)

manifest.json的:

{
  "name": "APPNAME",
  "gcm_sender_id": "SENDERID"
}
Run Code Online (Sandbox Code Playgroud)

cURL请求:

curl --header "Authorization: key=APIKEY" -application/json" https://fcm.googleapis.com/fcm/send …
Run Code Online (Sandbox Code Playgroud)

javascript firebase service-worker firebase-cloud-messaging

13
推荐指数
1
解决办法
1万
查看次数

与服务工作者一起存储REST请求以同步它们

我正在考虑使用服务工作人员使我的应用程序脱机.我已经通过缓存资源获得了令人满意的结果,但我还必须检查是否已连接到互联网,如果没有 - 存储请求,并将其推送到同步.

我明白,未来的onsync将有助于此,但我需要 - 甚至是临时的 - 解决方案.

我曾尝试将请求存储在worker中的数组中,但它不是持久的 - 在计算机重启后不起作用(当SW工作并提供脱机内容时).

什么是好方向 - 以某种方式将其存储在缓存中?或者使用IndexedDB/SimpleDB(在ServiceWorker中访问indexedDB.竞争条件)?

javascript offline service-worker

9
推荐指数
1
解决办法
5234
查看次数

在信令阶段之后断开与互联网的连接后,是否可以维持WebRTC连接?

如果在本地网络中的两个对等体之间建立了WebRTC连接,那么在失去与互联网的连接之后我们可以维护它吗?这似乎是可能的,因为它是点对点的.

webrtc

4
推荐指数
1
解决办法
1012
查看次数

我们如何检查请求的响应是否来自Service Worker

在谷歌C​​hrome控制台旁边的HTTP状态代码Request我们有信息(from ServiceWorker).

可以Request知道这Response来自ServiceWorker?比较dateResponse Headers可能?

javascript offline service-worker fetch-api

0
推荐指数
1
解决办法
1316
查看次数