cari
Rumahpembangunan bahagian belakangtutorial phpPengesahan keselamatan PHP dengan Firebase Cloud Messaging

Pengesahan keselamatan PHP dengan Firebase Cloud Messaging

Jul 24, 2023 am 09:41 AM
firebasecloud messagingpengesahan keselamatan php

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
Bagaimana anda boleh menyemak sama ada sesi PHP sudah bermula?Bagaimana anda boleh menyemak sama ada sesi PHP sudah bermula?Apr 30, 2025 am 12:20 AM

Dalam PHP, anda boleh menggunakan session_status () atau session_id () untuk memeriksa sama ada sesi telah bermula. 1) Gunakan fungsi session_status (). Jika php_session_active dikembalikan, sesi telah dimulakan. 2) Gunakan fungsi session_id (), jika rentetan tidak kosong dikembalikan, sesi telah dimulakan. Kedua -dua kaedah ini dapat memeriksa keadaan sesi dengan berkesan, dan memilih kaedah yang hendak digunakan bergantung pada versi PHP dan keutamaan peribadi.

Huraikan senario di mana menggunakan sesi adalah penting dalam aplikasi web.Huraikan senario di mana menggunakan sesi adalah penting dalam aplikasi web.Apr 30, 2025 am 12:16 AM

Sessionsarevitalinwebapplications, terutamanya-commercePlatforms.theymaintainuserdataacrossrequests, crucialforshoppingcarts, pengesahan, andpersonalization.inflask, SessionscanbeimplementedusingsImplecodetomanageusloginsanddateristence.

Bagaimanakah anda dapat mengurus akses sesi serentak di PHP?Bagaimanakah anda dapat mengurus akses sesi serentak di PHP?Apr 30, 2025 am 12:11 AM

Menguruskan akses sesi serentak dalam PHP boleh dilakukan dengan kaedah berikut: 1. Gunakan pangkalan data untuk menyimpan data sesi, 2 menggunakan redis atau memcached, 3. Melaksanakan strategi mengunci sesi. Kaedah ini membantu memastikan konsistensi data dan meningkatkan prestasi konkurensi.

Apakah batasan menggunakan sesi PHP?Apakah batasan menggunakan sesi PHP?Apr 30, 2025 am 12:04 AM

PhpsessionsHaveSeverallimitations: 1) storageConstraintscanleadtoperformanceissues; 2) SecurityVulnerabilityLikeSessionFixationAttackSexist; 3) ScalabilityIschallengingDuetoserver-SpecificStorage;

Terangkan bagaimana pengimbangan beban mempengaruhi pengurusan sesi dan bagaimana mengatasinya.Terangkan bagaimana pengimbangan beban mempengaruhi pengurusan sesi dan bagaimana mengatasinya.Apr 29, 2025 am 12:42 AM

Beban mengimbangi mempengaruhi pengurusan sesi, tetapi dapat diselesaikan dengan replikasi sesi, ketegangan sesi, dan penyimpanan sesi berpusat. 1. Sesi Replikasi Salinan Data Sesi Antara Pelayan. 2. Sesi Stickiness mengarahkan permintaan pengguna ke pelayan yang sama. 3. Penyimpanan Sesi Pusat menggunakan pelayan bebas seperti Redis untuk menyimpan data sesi untuk memastikan perkongsian data.

Terangkan konsep penguncian sesi.Terangkan konsep penguncian sesi.Apr 29, 2025 am 12:39 AM

Sessionlockingisatechniqueusedtoensureauserererersessionremainsexclusivetooneuseratatime.IScrucialFreventingDataCorruptionSandsecuritybreachesinmulti-userapplications.SessionLockingISimplementedusingserverververveChan

Adakah terdapat alternatif untuk sesi PHP?Adakah terdapat alternatif untuk sesi PHP?Apr 29, 2025 am 12:36 AM

Alternatif untuk sesi PHP termasuk kuki, pengesahan berasaskan token, sesi berasaskan pangkalan data, dan redis/memcached. 1.Cookies Menguruskan sesi dengan menyimpan data pada klien, yang mudah tetapi rendah dalam keselamatan. 2. Pengesahan berasaskan token menggunakan token untuk mengesahkan pengguna, yang sangat selamat tetapi memerlukan logik tambahan. 3.Database-berasaskan data menyimpan data dalam pangkalan data, yang mempunyai skalabilitas yang baik tetapi boleh menjejaskan prestasi. 4. Redis/Memcached menggunakan cache yang diedarkan untuk meningkatkan prestasi dan skalabiliti, tetapi memerlukan pemadanan tambahan

Tentukan istilah 'sesi rampasan' dalam konteks PHP.Tentukan istilah 'sesi rampasan' dalam konteks PHP.Apr 29, 2025 am 12:33 AM

SessionHijacking merujuk kepada penyerang yang menyamar sebagai pengguna dengan mendapatkan sessionId pengguna. Kaedah pencegahan termasuk: 1) menyulitkan komunikasi menggunakan HTTPS; 2) mengesahkan sumber sessionId; 3) menggunakan algoritma generasi sesi yang selamat; 4) Secara kerap mengemas kini sessionId.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

EditPlus versi Cina retak

EditPlus versi Cina retak

Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Pelayar Peperiksaan Selamat

Pelayar Peperiksaan Selamat

Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.