Ter*_*cio 6 ruby ruby-on-rails push-notification google-cloud-messaging service-worker
我正在尝试在Ruby On Rails中注册一个服务工作者来实现推送通知GCM.但没有任何反应.请看下面的代码:
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register('/assets/service-worker.js')
.then(initialiseState);
} else {
window.Demo.debug.log('Service workers aren\'t supported in this browser.');
Run Code Online (Sandbox Code Playgroud)
这部分工作正常.但是,当我打电话时navigator.serviceWorker.ready.then(function(serviceWorkerRegistration),没有任何反应.
我在搜索引擎上搜索,有一些东西可以帮助我.
有谁能够帮我 ?
在您的情况下,服务工作线程脚本service-worker.js需要从与注册它的页面相同的目录 URL 路径或子路径提供服务。
您正在使用路径/assets/service-worker.js,因此除非注册页面也由 提供/assets/,否则它将失败。如果您将 a 放在( 返回 a ).catch(function(error) { console.warn(error); })的末尾,您会看到那里报告的错误。register()Promise
最简单的方法是确保service-worker.js从与网页相同的目录中提供服务,然后调用register('service-worker.js'),它使用相同目录的相对路径。
| 归档时间: |
|
| 查看次数: |
1429 次 |
| 最近记录: |