首页 > 解决方案 > 如何通过 kreait/firebase-php 创建数据消息

问题描述

FCM 文档:

消息类型 使用 FCM,您可以向客户端发送两种类型的消息:

通知消息,有时被认为是“显示消息”。这些由 FCM SDK 自动处理。数据消息,由客户端应用程序处理。

我使用以下方法使用kreait/firebase-php创建推送通知,但 firebase 控制台显示所有发送的消息类型都是Notification而不是Data。如何发送数据类型消息?

$message = CloudMessage::withTarget('token', $deviceToken)
    ->withNotification(Notification::create('Title', 'Body'))
    ->withData(['key' => 'value']);

$message = CloudMessage::withTarget('token', $deviceToken)
    ->withData(['first_key' => 'First Value', 'second_key' => 'Second Value']);

标签: phpfirebasefirebase-cloud-messaging

解决方案


控制台不显示仅包含数据有效负载的消息。假设这些消息可能非常频繁,并且它会使控制台杂乱无章的信息不是很有用。

如果您想知道数据消息是否已发送,您应该检查用于发送它的 API 调用的结果。我不知道您正在使用的模块,但底层REST API清楚地说明了这一点。


推荐阅读