Я настраиваю службу обмена сообщениями Firebase на моем существующем сервере, но обнаружил некоторые проблемы.
Например, мой сайт имеет домен https://foo.bar/, и я установил свой новый PWA для обмена сообщениями Firebaseв https://foo.bar/firemessage/. тогда я реализовал:
firebaseMessage.onMessage(function(){...})
в https://foo.bar/firemessage/index.html
firebaseMessage.setBackgroundMessageHandler(function(){...})
в service_worker.js
, что делает передний план onMessage ()передавая полезную нагрузку сообщения в service_worker.js, затем service_worker.js выдает уведомления.
После нескольких тестов я обнаружил, что обмен сообщениями не будет работать, пока страницы, отличные от /foo.bar/firemessage/index.htmlоткрывается в браузере, в противном случае он работает нормально.в других случаях, если в браузере (Chrome) они открылись:
https://foo.bar/red/rose.html => blocks fcm
https://foo.bar/index.html => blocks fcm
https://foo.bar/firemessage/index.html => fcm works
https://foo.bar/firemessage => fcm works
https://google.com/ => fcm works
Я не смогу реализовать обмен сообщениями через Firebase на каждой странице сервера, затраты времени будут недопустимо высокими.У кого-нибудь есть идеи по решению этой проблемы?