Firebase onMessage () не получает сообщения - PullRequest
0 голосов
/ 20 сентября 2019

Я разрабатываю приложение для обмена сообщениями в реальном времени от Firebase.Мне удалось загрузить токен браузера / устройства в коллекцию в Firestore, но когда я пытаюсь проверить, принимаются ли сообщения в приложении, я не получаю их.

Вот некоторые части моего кода.

  <!-- The core Firebase JS SDK is always required and must be listed first -->
  <script src="https://www.gstatic.com/firebasejs/6.6.2/firebase-app.js"></script>
  <script src="https://www.gstatic.com/firebasejs/6.6.2/firebase-auth.js"></script>
  <script src="https://www.gstatic.com/firebasejs/6.6.2/firebase-firestore.js"></script>
  <script src="https://www.gstatic.com/firebasejs/6.6.2/firebase-messaging.js"></script>
  <script src="https://www.gstatic.com/firebasejs/6.6.2/firebase-functions.js"></script>


  <script>
    var firebaseConfig = {
        ---- PRIVATE ----
    };
    // Initialize Firebase
    firebase.initializeApp(firebaseConfig);
  </script>

  <script src="firebase-messaging-sw.js?v=2156"></script>

Уже пытался написать необходимый код для firebase-messaging-sw (https://stackoverflow.com/a/50078103/3881610), но я получаю сообщение об ошибке:

Uncaught FirebaseError: Messaging: этот метод доступен в контексте работника службы. (Messaging / Only-Available-In-SW).на странице:

var messaging = firebase.messaging();
messaging.onMessage((payload) => {
  console.log('Message received. ', payload);
});

Также убедитесь, что сообщения отправляются на токен устройства с помощью Postman и работают просто отлично.

Есть мысли? Спасибо!

1 Ответ

1 голос
/ 21 сентября 2019

Сначала firebase-messaging-sw.js - это файл JavaScript работника службы.

См. Не указано определение сценариев обмена сообщениями Firebase

А вы можете попробовать примеры?

См .:

...