迫于需要用到 web push,想请教下大家如何实现?

2019-05-17 22:04:45 +08:00
 cnfczn

最近在做的网站需要后台提醒功能,网上找到了 web push 功能.通过 web push,只要用户打开浏览器,而不需要打开特定 url,就可以收到通知的功能. 粗略的搜了下 firebase,fcm,gcm 之类的信息,发现 web push 需要和浏览器绑定,特定浏览器有自己的实现,比如 chrome 就是 fcm,fcm 就是 firebase 的一个子集.

web push 大概的流程,还是业务的服务端推送消息到 fcm,然后由 fcm 分发到订阅的浏览器内. 但是由于 fcm 依赖 google 服务,google 在国内无法访问. 所以业务的服务端和客户端都无法完成请求,这么一个完美的关系链,就这么硬生生的没法用了.

而对于目前这种状况,解决办法有两种:

  1. 改用国内的浏览器 UC(阿里巴巴旗下),实现的 uccm 粗略的看了下 uc 的开发文档,连基本的申请流程都没有实现完善,很难想象这么大的厂家,未来对 web push 的支持力度.而且我真的很讨厌 uc 浏览器,不清楚使用 uccm 能否在使用 chrome 浏览器的情况下,实现后台推送

  2. 使用代理工具代理间接访问这些服务. 不能保证每个用户都使用代理工具,而且延迟严重,影响用户体验.

  3. web push 的业务服务端在国内的 vps 上,国内 vps 比如狸厂,经常发警告通知,不胜其烦.再来,我从来不认为狸厂会在乎我的个人隐私,指不定什么时候代理就成公共厕所或者被 ban 了.

综上所述,也受限于我的个人理解,想请教下大家,有什么好的建议和看法?

1806 次点击
所在节点    问与答
7 条回复
acehow
2019-05-17 22:25:10 +08:00
正常的提醒都是访问你网站再提醒。要真有必要你就发邮件提醒。打开浏览器就提醒?这不耍流氓吗,广告主都这么搞,浏览器还让不让人用了?
cnfczn
2019-05-17 23:14:14 +08:00
@acehow 感谢你的回复,web push 的推送功能是才用订阅机制,所以不存在侵入式打扰的问题,如果用户不需要可以取消订阅。
s4nd
2019-05-18 05:18:34 +08:00
push.js
cnfczn
2019-05-18 06:53:01 +08:00
@s4nd 这个模块只能做到提醒,不能做到后台的提醒,如果网站没有打开,就办不到了
opengps
2019-05-18 07:46:27 +08:00
网站没打开就提醒,这不成了客户端了。因为不可行所以是伪需求,真需求只是通知,可以考虑短信等可行路线
whitev2
2019-05-18 11:33:34 +08:00
往浏览器上加扩展,然后扩展提醒
cnfczn
2019-05-18 22:56:54 +08:00
这属于用户行为了,不能够约束,而且 chrome 手机版不支持扩展呢。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/565199

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX