FCM v1 Mall Mankatch: fcm_options.link vs click_action в SWJavascript

Форум по Javascript
Ответить
Anonymous
 FCM v1 Mall Mankatch: fcm_options.link vs click_action в SW

Сообщение Anonymous »

Я использую API API Firebase Cloud Messaging (FCM) HTTP V1, чтобы отправить push -уведомления в веб -приложение. Веб-приложение использует Firebase JavaScript SDK (V11.2.0), и у меня есть файл Firebase-Messaging-Sw.js в корне домена для обработки фоновых уведомлений. полезная нагрузка. < /p>
Однако, когда уведомление получено у работника службы, и я осматриваю полезную нагрузку event.data.json (), я вижу, что: < /p>
url от webpush.fcm_options.link появляется в уведомлении. Совершенно < /p>
Такое поведение противоречит тому, что предлагает документация, и аналогичные несоответствия были отмечены в сообществах и проблемах Github. Неясно, является ли это преобразование из webpush.fcm_options.link в уведомление. 11.2.0). < /P>
Что я отправил (в FCM):
запрос сообщения по адресу: < /p>

Код: Выделить всё

https://fcm.googleapis.com/v1/projects/YOUR_PROJECT_ID/messages:send

Полетная нагрузка:
{ "message": { "token": "DEVICE_REGISTRATION_TOKEN", "notification": { "title": "Background Message Title", "body": "Background message body" }, "webpush": { "fcm_options": { "link": "https://your-target-url.com/some/path" }, "notification": { "icon": "/path/to/icon.png" } } } }< /code> < /p>
Что я ожидал.payload.fcmOptions.link< /code> < /p>
Что на самом деле произошло:
Полезная нагрузка, полученная в событии push, выглядела следующим образом: < /p>
{ "notification": { "title": "Background Message Title", "body": "Background message body", "icon": "/path/to/icon.png", "click_action": "https://your-target-url.com/some/path" }, "data": {}, "from": "FCM_SENDER_ID", "messageId": "MESSAGE_ID" }< /code> < /p>
Итак, click_action присутствует внутри уведомления, но Webpush или Fcmoptions полностью отсутствует. event.data.json ();
console.log('link найден через уведомление.// Trying to access these fails:
// console.log(payload.webpush?.fcm_options); // undefined
// console.log(payload.fcmOptions); // undefined
< /code>
}
}); `< /p>
Вопросы < /p>
  • Почему URL -адрес указан в WebPush.fcm_options.link как уведомление. намеренный и документированный? надежно?


Подробнее здесь: https://stackoverflow.com/questions/795 ... tion-in-sw
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»