Reactjs 将应用程序与FCM集成时出现MIME类型错误

Reactjs 将应用程序与FCM集成时出现MIME类型错误,reactjs,firebase-cloud-messaging,Reactjs,Firebase Cloud Messaging,我正在尝试将我的react应用程序与Firebase集成,以实现推送通知。我的src文件夹中有一个包含所有配置的文件: import firebase from 'firebase/app'; import 'firebase/messaging'; const config = { apiKey: "API_KEY", authDomain: "MY_DOMAIN", databaseURL: "DATABASE_UR

我正在尝试将我的react应用程序与Firebase集成,以实现推送通知。我的src文件夹中有一个包含所有配置的文件:

import firebase from 'firebase/app';
import 'firebase/messaging';

const config = {
    apiKey: "API_KEY",
    authDomain: "MY_DOMAIN",
    databaseURL: "DATABASE_URL",
    projectId: "PROJECT_ID",
    storageBucket: "STORAGE_BUCKET",
    messagingSenderId: "SENDER_ID",
    appId: "APP_ID",
    measurementId: "MEASURE_ID"
};

firebase.initializeApp(config);
const messaging = firebase.messaging();

export const requestFirebaseNotificationPermission = () =>
    new Promise((resolve, reject) => {
        messaging
            .requestPermission()
            .then(() => messaging.getToken())
            .then((firebaseToken) => {
                resolve(firebaseToken);
            })
            .catch((err) => {
                reject(err);
            });
    });

export const onMessageListener = () =>
    new Promise((resolve) => {
        messaging.onMessage((payload) => {
            resolve(payload);
        });
    });
下面是我如何在App.js中实现推送通知的功能:

 // Load the FCM configuration parameters and activate the push notifications through the app
        requestFirebaseNotificationPermission()
            .then((firebaseToken) => {
                // eslint-disable-next-line no-console
                console.log("CHECK_FCM_TOKEN", firebaseToken);
                this.setState({ fcmToken: firebaseToken })
            })
            .catch((err) => {
                return err;
            });
这是我经常遇到的错误,我长期以来一直没有解决方案:


如果能有任何帮助来解决这个问题,我将不胜感激。

我也有类似的问题。问题是我没有正确加载服务人员文件

将您的服务人员文件放在公用文件夹中,然后尝试访问它。 例如:我的服务人员文件(firebase messaging sw.js)被放在公共文件夹中。所以如果我打开http://localhost:3000/firebase-messaging-sw.js我可以查看js文件


react之前尝试获取此文件并返回了一个html(默认索引页)文件,导致返回MIME类型错误。

我也有类似问题。问题是我没有正确加载服务人员文件

将您的服务人员文件放在公用文件夹中,然后尝试访问它。 例如:我的服务人员文件(firebase messaging sw.js)被放在公共文件夹中。所以如果我打开http://localhost:3000/firebase-messaging-sw.js我可以查看js文件

react之前尝试获取此文件并返回html(默认索引页)文件,导致返回MIME类型错误