TypeScript 上的 Firebase FCM:“脚本具有不受支持的 MIME 类型('text/html')
Posted
技术标签:
【中文标题】TypeScript 上的 Firebase FCM:“脚本具有不受支持的 MIME 类型(\'text/html\')【英文标题】:Firebase FCM on TypeScript: "The script has an unsupported MIME type ('text/html')TypeScript 上的 Firebase FCM:“脚本具有不受支持的 MIME 类型('text/html') 【发布时间】:2021-05-29 04:12:33 【问题描述】:我正在尝试为我的应用实施 FCM,但由于此错误,我还无法接收设备令牌。这是我要运行的代码:
export const requestFirebaseNotificationPermission = () =>
new Promise((resolve, reject) =>
messaging
.requestPermission()
.then(() => messaging.getToken())
.then((firebaseToken) =>
resolve(firebaseToken);
)
.catch((err) =>
reject(err);
);
);
似乎 th ServiceWorker 可能有问题:
FirebaseError: Messaging: We are unable to register the default service worker. Failed to register a ServiceWorker for scope ('http://localhost:3000/firebase-cloud-messaging-push-scope') with script ('http://localhost:3000/firebase-messaging-sw.js'): The script has an unsupported MIME type ('text/html'). (messaging/failed-service-worker-registration).
我发现this 文件似乎涉及到这个主题,但我承认我不明白需要做什么。我应该创建一个名为 firebase-messaging-sw.js 的文件并使其在我的路线上可用吗?这应该如何工作?
【问题讨论】:
【参考方案1】:我终于找到了一篇关于这个主题的更好解释的文章 here,并且可以按照这些步骤在我的 React 应用中启用通知。
由于我是新手,我不清楚 firebase-messaging-sw.js 文件应该放在“public”目录中。
【讨论】:
以上是关于TypeScript 上的 Firebase FCM:“脚本具有不受支持的 MIME 类型('text/html')的主要内容,如果未能解决你的问题,请参考以下文章
使用 typescript 中 Promise 中的值设置 React.FC 状态
React Typescript:在 React.FC 中设置状态以更改 React.Component 中的值
firebase 云功能中带有 typescript 的 firebase-admin
找不到模块“firebase”或其相应的类型声明。 React + TypeScript + Firebase