Laravel 使用 edujugon 的 Web 推送通知 push-notification

Laravel Web Push notification using edujugon push-notification

我的项目有问题。我正在使用 edujugon push-notification 推送我的应用程序通知,我成功创建了推送通知到 android、ios 设备,标题为 body。但是,当我将通知集成到我的网络设备中时,它不会显示标题 body,而是显示 the site is upgrated in backend。我还想在我的网络通知中设置一个 url。但是不知道怎么弄。

这是我的代码

public static function sendPushNotification($devices, $pushData, $partner = false) {

    $android = $devices->where('type', 2)->pluck('token')->all();
    if (!empty($android)) {
        $push = new PushNotification('fcm');

        $push->setMessage(
            [
                'data' => $pushData,
            ]
        )
            ->setDevicesToken($android)
            ->send();
    }

    $ios = $devices->where('type', 1)->pluck('token')->all();

    if (!empty($ios)) {
        $push = new PushNotification('apn');

        $feedback = $push->setMessage(
                [
                    'aps' => [
                        'alert' => [
                            'title' => $pushData['title'],
                            'body' => $pushData['body'],
                        ],
                        'sound' => 'default',
                        'badge' => 1
                    ],
                    'data' => $pushData
                ]
        )->setDevicesToken($ios)->send()->getFeedback();
    }

    $web = $devices->where('type', 3)->pluck('token')->all();
    if (!empty($web)) {
        $push = new PushNotification('fcm');

        $push->setMessage($pushData)->setDevicesToken($web)->send();
    }
}

我的推送数据是

$pushData = [
    'title' => 'Test',
    'body' => 'Test',
];

请帮我解决这个问题

你应该这样写

if (!empty($web)) {
            $push = new PushNotification('fcm');

            $push->setMessage(
                [
                    'notification' => $pushData,
                ]
            )->setDevicesToken($web)->send();
        }

希望这能解决您的问题。