Отправка сообщения через FCM Web успешно, но в браузере ничего не отображается - PullRequest
0 голосов
/ 15 марта 2019

Я отправляю следующее уведомление

Authorization:key=A.....
Content-Type:application/json    
{
    "to" : "cBx_ErhkhNw:APA91bEzwHvZ2daEK15Y3A0VAprxPV-4GGq10FjlrFnHzCs8xSJXz2lATjh9AoLRQvnSseT6r4ggApC6TbtD9M_sI_BDDmycZ1TEVn0HaF5pAABeSbHqcOK-kmkPqOve1VThUaUIXQy4",

      "notification": {
        "title": "Test Nachricht",
        "body": "This is a message from FCM to web"
      },
      "priority": "high",
      "webpush": {
      "fcm_options": {
        "link": "https://dummypage.com"
      }
    }

}

И иметь следующий код:

app.js

 // Initialize Firebase
 var config = {
     apiKey: "<KEY>",
     authDomain: "<AUTH_DOMAIN>",
     databaseURL: "<DB_URL>",
     projectId: "atlas-test-35d33",
     storageBucket: "<STORAGE_BUCKET>",
     messagingSenderId: "817272374311"
 };
 firebase.initializeApp(config);
 const messaging = firebase.messaging();
 messaging.usePublicVapidKey("<PUBLIC_KEY>");
 messaging.requestPermission()
     .then(function() {
         console.log("Permission granted");
         return messaging.getToken()
     })
     .then(function(token) {
         console.log(token)
     })
     .catch(function(err) {
         console.log(err)
     })
 console.log("listenting")
 messaging.onMessage(function(payload) {
     console.log('Message received. ', payload);
     // ...
 });

firebase-сообщений-sw.js

    // Give the service worker access to Firebase Messaging.
// Note that you can only use Firebase Messaging here, other Firebase libraries
// are not available in the service worker.
importScripts('https://www.gstatic.com/firebasejs/5.9.0/firebase-app.js');
importScripts('https://www.gstatic.com/firebasejs/5.9.0/firebase-messaging.js');

  var config = {
    apiKey: "<KEY>",
    authDomain: "<AUTH_DOMAIN>",
    databaseURL: "https://atlas-test-35d33.firebaseio.com",
    projectId: "atlas-test-35d33",
    storageBucket: "<STORAGE_BUCKET>",
    messagingSenderId: "817272374311"
  };
  firebase.initializeApp(config);

// Retrieve an instance of Firebase Messaging so that it can handle background
// messages.
const messaging = firebase.messaging();

Когда я пытаюсь отправить уведомление на сервер fcm, я получаю следующий ответ:

{
    "multicast_id": 5394725759940263108,
    "success": 1,
    "failure": 0,
    "canonical_ids": 0,
    "results": [
        {
            "message_id": "0:1552646324437940%e609af1cf9fd7ecd"
        }
    ]
}

Кажется, у меня все хорошо. Но я ничего не получаю в своем веб-приложении. Я просто жестко запрограммировал токен «to» для тестирования, но не думаю, что это проблема.

У вас есть какие-либо подсказки, в чем проблема, или есть возможность отладки.

Спасибо!

...