脚本资源位于重定向之后,这是不允许的。Firebase 云消息传递

IT技术 reactjs firebase firebase-cloud-messaging
2021-05-21 16:33:11

嗨,从过去一个月起,我们的 Firebase 应用程序开始出现此错误。“脚本资源位于重定向之后,这是不允许的。” 我们已经在服务器的根目录注册了 firebase-messaging-sw.js,它也在浏览器中打开。相同的代码在 localhost 中运行良好,但在公共域(cloudflare dNS)上出现此错误

https://prnt.sc/orot3j

已经尝试过这里提到的解决方案:Firebase:更改服务工作者的位置

我们当前的代码:

                messaging = firebase.messaging();
                $this.setState({messaging});
                messaging.useServiceWorker(registration);
                messaging.requestPermission().then(function() {

                    $this.setState({permission:true});
                    messaging.getToken().then(function(currentToken) {
                        $this.setState({fcmtoken:currentToken});

                        resolve(currentToken);
                    });
                });
            });

firebase-messaging-sw.js 内容:

        importScripts("https://www.gstatic.com/firebasejs/5.3.0/firebase-messaging.js");
         var config = {
          apiKey: "AIzxxxxxxxxxxxxxx0",
          authDomain: "noxxxxions-7xxxd.firebaseapp.com",
          databaseURL: "https://notifications-76xxxxd.firebaseio.com",
          projectId: "nxxxxxxxxxxd",
          storageBucket: "notifixxxxxx.appspot.com",
          messagingSenderId: "90000000000"
        };
        firebase.initializeApp(config);
        var messaging = firebase.messaging();


        messaging.setBackgroundMessageHandler(function(payload) {

          var notificationTitle = "Background Message Title";
          var notificationOptions = {
            body: "Background Message body.",
            icon: "/firebase-logo.png"
          };

          return self.registration.showNotification(notificationTitle,
            notificationOptions);
        });```
1个回答

单击该链接会导致重定向。

如果您尝试使用重定向的 url,例如:https : //prnt.sc/orot3j而不是http://prntscr.com/orot3j 会怎样