Paket Laravel untuk Firebase PHP Admin SDK.
Silakan baca tentang masa depan Firebase Admin PHP SDK di Repositori GitHub SDK.
composer require kreait/laravel-firebase
Untuk mengakses proyek Firebase dan layanan terkaitnya menggunakan SDK server, permintaan harus diautentikasi. Untuk komunikasi server-ke-server, hal ini dilakukan dengan Akun Layanan.
Jika Anda belum membuat Akun Layanan, Anda dapat melakukannya dengan mengikuti petunjuk dari halaman dokumentasi resmi di https://firebase.google.com/docs/admin/setup#initialize_the_sdk_in_non-google_environments.
Setelah mengunduh file JSON Akun Layanan, Anda dapat mengonfigurasi paket dengan menentukan variabel lingkungan yang dimulai dengan FIREBASE_
di file .env
Anda. Biasanya, hal berikut ini diperlukan agar paket dapat berfungsi:
# You can find the database URL for your project at
# https://console.firebase.google.com/project/_/database
FIREBASE_DATABASE_URL=https://.firebaseio.com
Untuk konfigurasi lebih lanjut, silakan lihat config/firebase.php. Anda dapat mengubah konfigurasi dengan menyalinnya ke direktori config
lokal atau dengan mendefinisikan variabel lingkungan yang digunakan dalam file konfigurasi:
# Laravel
php artisan vendor:publish --provider= " KreaitLaravelFirebaseServiceProvider " --tag=config
Paket ini menggunakan penemuan otomatis untuk proyek default guna menemukan kredensial yang diperlukan untuk mengautentikasi permintaan ke Firebase API dengan memeriksa variabel lingkungan tertentu dan melihat jalur Google yang terkenal.
Jika Anda tidak ingin akun layanan ditemukan secara otomatis, sediakan dengan mengatur variabel lingkungan FIREBASE_CREDENTIALS
atau GOOGLE_APPLICATION_CREDENTIALS
atau dengan mengadaptasi konfigurasi paket, seperti misalnya:
FIREBASE_CREDENTIALS = storage/app/firebase-auth.json
Jika Anda memilih untuk memiliki kontrol lebih besar atas item konfigurasi yang diperlukan untuk mengonfigurasi kredensial, Anda juga dapat mengubah urutan file JSON Akun Layanan sebagai array dalam file config/firebase.php
Anda.
' credentials ' => [
' type ' => ' service_account ' ,
' project_id ' => ' some-project-123 ' ,
' private_key_id ' => ' 123456789 ' ,
' private_key ' => ' -----BEGIN PRIVATE KEY-----nFOO_BAR_123456789n-----END PRIVATE KEY-----n ' ,
' client_email ' => ' [email protected] ' ,
' client_id ' => ' 123456789 ' ,
' auth_uri ' => ' https://accounts.google.com/o/oauth2/auth ' ,
' token_uri ' => ' https://oauth2.googleapis.com/token ' ,
' auth_provider_x509_cert_url ' => ' https://www.googleapis.com/oauth2/v1/certs ' ,
' client_x509_cert_url ' => ' https://www.googleapis.com/robot/v1/metadata/x509/firebase-adminsdk-cwiuo%40some-project-123.iam.gserviceaccount.com ' ,
' universe_domain ' => ' googleapis.com ' ,
],
Setelah Anda mengambil komponen, lihat dokumentasi Firebase PHP Admin SDK untuk informasi lebih lanjut tentang cara menggunakannya.
Anda tidak memerlukan dan tidak boleh menggunakan pola new Factory()
yang dijelaskan dalam dokumentasi SDK, ini sudah dilakukan untuk Anda dengan Penyedia Layanan Laravel. Gunakan Injeksi Ketergantungan, Fasad, atau pembantu app()
sebagai gantinya
Beberapa proyek dapat dikonfigurasi di config/firebase.php dengan menambahkan bagian lain ke array proyek.
Saat mengakses komponen, fasad menggunakan proyek default. Anda juga dapat menggunakan proyek secara eksplisit:
use Kreait Laravel Firebase Facades Firebase ;
// Return an instance of the Auth component for the default Firebase project
$ defaultAuth = Firebase:: auth ();
// Return an instance of the Auth component for a specific Firebase project
$ appAuth = Firebase:: project ( ' app ' )-> auth ();
$ anotherAppAuth = Firebase:: project ( ' another-app ' )-> auth ();
Hanya versi terbaru yang didukung secara aktif.
Versi sebelumnya akan menerima perbaikan keamanan selama persyaratan SDK terendahnya menerima perbaikan keamanan. Anda dapat menemukan versi yang didukung saat ini dan opsi dukungan di README SDK.
Versi | Rilis Awal | Versi SDK yang Didukung | Versi Laravel yang Didukung | Status |
---|---|---|---|---|
5.x | 13 Januari 2023 | ^7.0 | ^9.0 , ^10.0 , ^11.0 | Aktif |
4.x | 09 Januari 2022 | ^6.0 | ^8.0 | Akhir kehidupan |
3.x | 01 November 2020 | ^5.24 | ^6.0, ^7.0, ^8.0 | Akhir kehidupan |
2.x | 01 April 2020 | ^5.0 | ^5.8, ^6.0, ^7.0, ^8.0 | Akhir kehidupan |
1.x | 17 Agustus 2019 | ^4.40.1 | ^5.8, ^6.0, ^7.0 | Akhir kehidupan |
Proyek ini dilisensikan di bawah Lisensi MIT.
Penggunaan Anda atas Firebase diatur oleh Persyaratan Layanan untuk Layanan Firebase.