Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 颤振Web:FCM无法注册服务工作者_Javascript_Firebase_Firebase Cloud Messaging_Service Worker_Flutter Web - Fatal编程技术网

Javascript 颤振Web:FCM无法注册服务工作者

Javascript 颤振Web:FCM无法注册服务工作者,javascript,firebase,firebase-cloud-messaging,service-worker,flutter-web,Javascript,Firebase,Firebase Cloud Messaging,Service Worker,Flutter Web,我试图在一个Flutter Web应用程序中实现FCM通知,但在注册我的服务人员时出错。我认为这可能来自我的文件index.html和firebase messaging sw.js的制作方式 index.html MyApp //您的web应用程序的Firebase配置 //对于Firebase JS SDK v7.20.0及更高版本,measurementId是可选的 变量devConfig={ API密钥:“API_密钥”, authDomain:“AUTH_域”, 数据库URL:“数据

我试图在一个Flutter Web应用程序中实现FCM通知,但在注册我的服务人员时出错。我认为这可能来自我的文件
index.html
firebase messaging sw.js
的制作方式

index.html


MyApp
//您的web应用程序的Firebase配置
//对于Firebase JS SDK v7.20.0及更高版本,measurementId是可选的
变量devConfig={
API密钥:“API_密钥”,
authDomain:“AUTH_域”,
数据库URL:“数据库URL”,
projectId:“项目ID”,
存储桶:“存储桶”,
messagingSenderId:“消息发送人ID”,
appId:“APP_ID”,
measurementId:“测量ID”
};
//初始化Firebase
firebase.initializeApp(devConfig);
if(导航器中的“serviceWorker”){
addEventListener(“加载”,函数(){
register(“/firebase messaging sw.js”);
});
}
firebase消息软件js

Uncaught FirebaseError: Firebase: No Firebase App '[DEFAULT]' has been created - call Firebase App.initializeApp() (app/no-app).
    at p (https://www.gstatic.com/firebasejs/7.5.0/firebase-app.js:1:10100)
    at Object.o [as messaging] (https://www.gstatic.com/firebasejs/7.5.0/firebase-app.js:1:9710)
    at http://localhost:56234/firebase-messaging-sw.js:33:28
importScripts('https://www.gstatic.com/firebasejs/7.5.0/firebase-app.js');
进口文件('https://www.gstatic.com/firebasejs/7.5.0/firebase-messaging.js');
变量devConfig={
API密钥:“API_密钥”,
authDomain:“AUTH_域”,
数据库URL:“数据库URL”,
projectId:“项目ID”,
存储桶:“存储桶”,
messagingSenderId:“消息发送人ID”,
appId:“APP_ID”,
measurementId:“测量ID”
};
//通过传入来初始化service worker中的Firebase应用程序
//您的应用程序的Firebase配置对象。
// https://firebase.google.com/docs/web/setup#config-反对
firebase.initializeApp(devConfig);
//检索Firebase消息传递的实例,以便它能够处理后台消息传递
//信息。
const messaging=firebase.messaging();
messageing.setBackgroundMessageHandler(函数(有效负载){
log(“[firebase messaging sw.js]接收到后台消息”,有效负载);
//在此处自定义通知
const notificationTitle='背景消息标题';
const notificationOptions={
正文:“背景消息正文”,
图标:'/firebase logo.png'
};
返回self.registration.showNotification(notificationTitle,
通知选项);
});
错误

Uncaught FirebaseError: Firebase: No Firebase App '[DEFAULT]' has been created - call Firebase App.initializeApp() (app/no-app).
    at p (https://www.gstatic.com/firebasejs/7.5.0/firebase-app.js:1:10100)
    at Object.o [as messaging] (https://www.gstatic.com/firebasejs/7.5.0/firebase-app.js:1:9710)
    at http://localhost:56234/firebase-messaging-sw.js:33:28
  • 我正在使用命令
    flatterrun-dwebserver
    测试应用程序
  • 在我的
    main.dart
    中启动应用程序之前,我正确地调用了
    wait Firebase.initializeApp()
  • 我正在使用软件包
    firebase\u core:^0.5.0
  • 我已经在
    7.22.1
    7.5.0
    版本中使用firebase脚本进行了测试

在index.html中添加以下内容

<script src="https://www.gstatic.com/firebasejs/8.4.1/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/8.4.1/firebase-messaging.js"></script>

是的,最后我添加了firebase消息脚本,它工作正常。我认为你的回答是正确的。