首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Push API的push服务URL设置如何?

Push API的push服务URL设置如何?
EN

Stack Overflow用户
提问于 2015-07-14 17:45:08
回答 2查看 1.2K关注 0票数 2

推送API将推送服务定义为

一种允许应用服务器向webapp发送推送消息的系统。

对服务的订阅是通过在没有任何参数的情况下调用serviceWorkerRegistration .pushManager.subscribe()创建的。

如何配置此推送服务的URL?我原以为.subscribe()会为该服务接受一个URL参数。

Push API的姊妹规范使用HTTP Push的通用事件传递说:

push服务:此资源用于创建push消息订阅(参见第3节)。push服务的URL被配置为用户代理。

但是它没有指定如何进行这种配置。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-14 20:28:50

这句来自你引用的第二份文件的话回答了以下问题:

此文档无意描述如何发现推送服务。如果有必要的话,对push服务的发现将留待以后的工作来完成。用户代理将被配置为push服务的URL。

目前,浏览器正在提供一些特定的推送服务的内置知识,比如Chrome中的GCM。在在开放Web上推送通知关于HTMLRocks的文章中提到了这一点:

Chrome使用GCM来处理推送信息的发送和传递。其他浏览器可以免费使用任何推送服务..。

但是,看看将来是否会开放浏览器会很有趣,因此,正如您所建议的那样,我们可以在subscribe的参数中指定我们自己选择的服务。

票数 4
EN

Stack Overflow用户

发布于 2015-12-02 21:03:00

首先使用navigator.serviceWorker.register('/some-service-worker.js')注册服务工作者,然后当您调用serviceWorkerRegistration .pushManager.subscribe()时,此seriveceWorkerRegistration引用您刚刚注册的服务工作人员。

最好用一个例子来说明这一点:

代码语言:javascript
复制
navigator.serviceWorker.register('/some-service-worker.js').then(function() {
    navigator.serviceWorker.ready.then(function(serviceWorkerRegistration) {
        serviceWorkerRegistration.pushManager.subscribe({userVisibleOnly: true}).then(function() {/*...*/});
    });
});
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31413727

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档