我正在使用 push.js 模块向我的 PWA reactjs 应用程序(firebase)发送推送通知。它在本地主机(桌面和移动)上运行良好,但在实时版本的移动浏览器上会抛出错误:
“脚本具有不受支持的 MIME 类型('text/html')。DOMException:无法为范围注册 ServiceWorker ...:脚本具有不受支持的 MIME 类型('text/html')。”
显示权限弹出窗口,但由于某种原因,服务人员未在移动设备上注册……问题是为什么?
这是我使用的代码:
import Push from 'push.js';
export function showNotification(title, body) {
const permission = Push.Permission.get();
if (permission === Push.Permission.GRANTED) {
createNotification(title, body);
} else if (permission === Push.Permission.DEFAULT) {
Push.Permission.request(
() => createNotification(title, body),
() => {}
);
}
}
function createNotification(title, body) {
Push.create(title, {
body: body,
timeout: 4000,
onClick: function () {
window.focus();
this.close();
}
});
}