Edge企业版(109.0.1518.78)中Google FCM获取Token报错求助
企业版Edge中Firebase推送通知getToken报错:Registration failed - push service error
问题详情
Chrome浏览器中可正常获取推送Token并接收通知,但在企业版Edge 109.0.1518.78中调用getToken时触发如下错误:
DOMException: Registration failed - push service error
核心实现代码:
const messaging = firebase.messaging(); messaging.requestPermission().then(function () { messaging.getToken().then(function (currentToken) { sendTokenToServer(currentToken); }) .catch(function (err) { console.warn(err); setTokenSentToServer(false); }); });
排查与解决方法
检查企业版Edge组策略限制
企业版Edge通常受组政策管控,可能被禁用了推送服务:- 在地址栏输入
edge://policy/查看推送相关政策,重点确认PushMessagingEnabled是否设为false,DefaultNotificationsSetting是否被设置为禁用状态 - 若存在限制,联系企业IT部门调整对应组策略
- 在地址栏输入
验证Service Worker配置
Edge对Service Worker的路径和作用域要求更严格:- 确认
firebase-messaging-sw.js放置在网站根目录,且作用域(scope)配置正确 - 输入
edge://serviceworker-internals/检查Service Worker是否正常注册,无报错信息
- 确认
重置Edge缓存与权限
- 清除当前网站的缓存、Cookie,进入网站设置→通知→重置推送权限
- 重启Edge后重新请求推送权限并测试
升级Edge版本
当前使用的109版本属于旧版本,可能存在已知推送服务兼容bug,升级到最新稳定版后再进行测试更新Firebase SDK版本
确认当前使用的Firebase SDK版本支持Edge 109,尝试升级到最新兼容版本后重新测试
内容的提问来源于stack exchange,提问作者user17290362
相关产品推荐
相关产品推荐

