首页 > 解决方案 > 在 JavaScript FCM 中注册 2 个 senderIds

问题描述

在网页上,我正在尝试创建 2 个具有不同名称的 firebase 应用程序,每个应用程序都与不同的 senderId 相关联。我基本上是这样做的:

    const init = async ()=>{
        const senderId1 = "SENDERID_1";
        const senderId2 = "SENDERID_2";

        const firebase1 = firebase.initializeApp({"messagingSenderId": senderId1},`name${senderId1}`);
        const firebase2 = firebase.initializeApp({"messagingSenderId": senderId2},`name${senderId2}`);

        const messaging1 = firebase1.messaging();
        const messaging2 = firebase2.messaging();

        await messaging1.requestPermission();
        await messaging2.requestPermission();

        const token1 = await messaging1.getToken(senderId1,"FCM");
        const token2 = await messaging2.getToken(senderId2,"FCM");

        document.querySelector("#token1").innerHTML = token1;
        document.querySelector("#token2").innerHTML = token2;
        document.querySelector("#areTheSame").innerHTML = (token1 == token2);
    };
    init();

这是一个举例说明这种行为的页面

该代码不会产生任何错误,但 token1 始终与 token2 相同。显然我需要他们与众不同。好像是缓存问题?

有没有人知道是否有解决方法?提前致谢

标签: javascriptfirebasefirebase-cloud-messagingtoken

解决方案


推荐阅读