Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Pengesahan keselamatan PHP dengan Firebase Cloud Messaging

Pengesahan keselamatan PHP dengan Firebase Cloud Messaging

PHPz
PHPzasal
2023-07-24 09:41:211533semak imbas

Pengesahan Keselamatan PHP dengan Firebase Cloud Messaging

Firebase Cloud Messaging (FCM) ialah penyelesaian pemesejan merentas platform percuma yang membantu pembangun menghantar mesej ke peranti mudah alih dan aplikasi web. Dalam artikel ini, kita akan mempelajari cara melaksanakan pengesahan selamat dalam PHP menggunakan Pemesejan Awan Firebase.

Langkah 1: Sediakan Projek Firebase

Mula-mula, kita perlu membuat projek baharu pada konsol Firebase dan mendayakan perkhidmatan Pemesejan Awan Firebase. Dalam konsol kita boleh mendapatkan kelayakan yang dipanggil "Kunci Pelayan" yang akan digunakan untuk berkomunikasi dengan FCM dalam PHP.

Langkah 2: Pasang Firebase PHP SDK

Untuk berinteraksi dengan Firebase Cloud Messaging dengan lebih mudah, kami boleh menggunakan PHP SDK rasmi yang disediakan oleh Firebase. Kita boleh memasangnya melalui Komposer dan melaksanakan arahan berikut:

composer require kreait/firebase-php

Langkah 3: Tulis kod PHP

Kini, kita boleh mula menulis kod PHP untuk melaksanakan pengesahan keselamatan. Berikut ialah kod contoh mudah:

<?php
require __DIR__.'/vendor/autoload.php';

use KreaitFirebaseFactory;
use KreaitFirebaseMessagingCloudMessage;
use KreaitFirebaseMessagingNotification;
use KreaitFirebaseMessagingAndroidConfig;

$factory = (new Factory)->withServiceAccount('path/to/serviceAccountCredentials.json');

$messaging = $factory->createMessaging();

$message = CloudMessage::withTarget('token', 'your-device-token')
    ->withNotification(Notification::create('Title', 'Body'))
    ->withAndroidConfig(AndroidConfig::create()->withPriority('high'));

try {
    $messaging->send($message);
    echo 'Message sent successfully';
} catch (Throwable $e) {
    echo 'Error: '.$e->getMessage();
}
?>

Dalam kod sampel di atas, kami mula-mula memuatkan Firebase PHP SDK melalui require __DIR__.'/vendor/autoload.php'; . Seterusnya, kami menggunakan pernyataan require untuk mengimport kelas yang diperlukan, termasuk Factory, CloudMessage, Notification, AndroidConfig. require __DIR__.'/vendor/autoload.php'; 加载了 Firebase PHP SDK。接下来,我们使用 require 语句导入了所需的类,包括 Factory, CloudMessage, Notification, AndroidConfig

通过 $factory = (new Factory)->withServiceAccount('path/to/serviceAccountCredentials.json'); 创建了一个 Firebase 实例,并指定了用于身份验证的凭证文件路径。请确保将 path/to/serviceAccountCredentials.json 替换为你实际的 JSON 文件路径。在 Firebase 控制台中,可以从设置菜单中的“服务帐户”选项下下载该凭证文件。

接下来,我们实例化了 $messaging 对象,该对象用于与 FCM 服务进行通信。

使用 CloudMessage::withTarget('token', 'your-device-token') 方法,我们指定了消息的接收者。其中,'your-device-token' 应替换为你实际设备的令牌。

withNotification 方法用于指定消息的标题和正文内容。

最后,通过 $messaging->send($message); 发送消息。成功发送后,将输出 'Message sent successfully';如果发送过程中发生错误,则输出错误信息。

步骤四:测试代码

在完成代码编写后,我们可以运行脚本进行测试。确保 PHP 运行环境已正确配置,并在命令行中执行以下命令:

php your-php-file-name.php

以上述示例代码为例,将 your-php-file-name.php

Mencipta instance Firebase melalui $factory = (new Factory)->withServiceAccount('path/to/serviceAccountCredentials.json'); dan menentukan laluan fail kelayakan untuk pengesahan . Sila pastikan untuk menggantikan path/to/serviceAccountCredentials.json dengan laluan fail JSON sebenar anda. Dalam konsol Firebase, anda boleh memuat turun fail bukti kelayakan daripada menu Tetapan di bawah pilihan "Akaun Perkhidmatan".

Seterusnya, kami membuat instantiate objek $messaging, yang digunakan untuk berkomunikasi dengan perkhidmatan FCM.

Menggunakan kaedah CloudMessage::withTarget('token', 'your-device-token'), kami menentukan penerima mesej. di mana 'your-device-token' harus digantikan dengan token peranti sebenar anda. Kaedah 🎜🎜dengan Pemberitahuan digunakan untuk menentukan tajuk dan kandungan kandungan mesej. 🎜🎜Akhir sekali, hantar mesej melalui $messaging->send($message);. Selepas berjaya menghantar, 'Message sent successfully' akan dikeluarkan jika ralat berlaku semasa proses penghantaran, mesej ralat akan dikeluarkan. 🎜🎜Langkah 4: Uji kod🎜🎜Selepas selesai menulis kod, kita boleh menjalankan skrip untuk ujian. Pastikan persekitaran berjalan PHP dikonfigurasikan dengan betul dan laksanakan arahan berikut dalam baris arahan: 🎜rrreee🎜 Ambil contoh kod di atas sebagai contoh, gantikan your-php-file-name.php dengan nama fail PHP sebenar anda. 🎜🎜Ringkasan🎜🎜Dengan Pemesejan Awan Firebase, kami boleh melaksanakan pengesahan keselamatan dengan mudah dalam PHP dan menghantar mesej ke peranti mudah alih dan aplikasi web. Dalam artikel ini, kami menunjukkan contoh kod lengkap tentang cara menggunakan Firebase PHP SDK dan FCM untuk pengesahan keselamatan. Saya harap artikel ini dapat membantu anda memahami dan menggunakan pengesahan keselamatan Firebase Cloud Messaging dalam PHP. 🎜

Atas ialah kandungan terperinci Pengesahan keselamatan PHP dengan Firebase Cloud Messaging. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn