Mengupgrade aplikasi Web/Node.js dari Firebase.com

Dokumen ini berisi panduan mengenai cara melakukan upgrade aplikasi web dan Node.js yang ada, dari Firebase.com ke Firebase console yang baru dan SDK 3.x.

Ada tiga langkah yang dilakukan:

  1. Mengimpor project Anda ke dalam Firebase console yang baru
  2. Mengupdate kode database Anda
  3. Mengupdate kode autentikasi Anda

Anda dapat mengimpor project kapan saja. Aplikasi Anda dan SDK yang ada akan tetap berfungsi. Anda kemudian dapat mengupdate kode ketika siap menggunakan beberapa fitur Firebase yang baru dalam aplikasi.

Mengimpor project Anda ke Firebase console

  • Buka Firebase console, lalu cari project Anda di bagian "Project yang saat ini ada di Firebase.com".
  • Klik Impor untuk project yang ingin Anda upgrade.
  • Jika project tersebut merupakan paket berbayar di firebase.com, Anda harus menyiapkan penagihan untuk project ini di konsol yang baru. Informasi penagihan Anda tidak akan dipindahkan secara otomatis
  • Pilih atau buat akun penagihan. Setelah mengimpor, akun ini bertanggung jawab atas semua tagihan dalam project tersebut.
  • Konten Realtime Database dan Hosting Anda akan langsung diimpor secara otomatis ke Firebase console.
  • Data pengguna Anda akan dimigrasikan secara otomatis ke backend autentikasi yang baru. Hal ini terjadi di latar belakang, dan pengguna dapat terus menggunakan aplikasi saat data sedang dimigrasikan. Pendaftaran dan login pengguna tidak akan terpengaruh. Saat sistem memigrasikan akun pengguna, Anda akan melihat indikator lingkaran berputar di tab Auth pada Firebase console.
  • Jika Anda memiliki kode promosi yang aktif untuk aplikasi Firebase.com, hubungi kami.
  • Melakukan upgrade Firebase CLI

    Untuk menggunakan Antarmuka Line Interface dengan project yang sudah di-upgrade, Anda harus menginstal versi 3.0 atau yang lebih baru. Anda dapat melakukannya dengan menjalankan:

    npm install -g firebase-tools
    

    Setelah mengupdate versi terbaru Firebase CLI, Anda harus mengautentikasi ulang dengan menjalankan firebase login. Untuk mendapatkan token baru untuk server integrasi berkelanjutan atau sistem headless lainnya, jalankan firebase login:ci.

    Terakhir, Anda harus menjalankan firebase tools:migrate di setiap direktori project untuk project Firebase.com yang dimigrasi.

    Mengupdate versi klien Anda

    Anda tidak perlu mengupdate kode aplikasi dengan segera. Kode database dan autentikasi yang ada akan terus berfungsi pada project Anda yang sudah di-upgrade. Namun, ketika Anda siap untuk mulai menggunakan beberapa fitur Firebase yang baru dalam aplikasi, berikut adalah langkah-langkah untuk memindahkan kode database ke API yang baru.

    Cara termudah untuk memulainya adalah dengan mengubah skrip Anda, meliputi:

    SEBELUM
    
    <script src="https://cdn.firebase.com/js/client/2.3.2/firebase.js"></script>
    
    SESUDAH
    
    <script src="https://www.gstatic.com/firebasejs/7.4.0/firebase.js"></script>
    

    Jika Anda memigrasi aplikasi Node.js, Anda dapat mendownload versi terbaru paket npm firebase dengan perintah berikut (untuk memastikan tidak dipasangi pin ke versi 2.X, Anda dapat melakukan uninstal sebelum menginstal versi terbaru):

    $ npm uninstall firebase --save
    $ npm install firebase --save
    

    Mendapatkan referensi database

    Dalam SDK yang baru, Anda tidak lagi membuat instance pada referensi database melalui new Firebase. Sebagai gantinya, Anda akan melakukan inisialisasi SDK melalui firebase.initializeApp():

    SEBELUM
    
    var ref = new Firebase("https://databaseName.firebaseio.com");
    
    SESUDAH
    
    // See https://firebase.google.com/docs/web/setup for how to
    // auto-generate this config
    var config = {
      apiKey: "apiKey",
      authDomain: "your-firebase-project-id.firebaseapp.com",
      databaseURL: "https://databaseName.firebaseio.com"
    };
    
    firebase.initializeApp(config);
    
    var rootRef = firebase.database().ref();
    

    Anda dapat membuat konfigurasi di atas secara otomatis dengan mengikuti petunjuk di halaman penyiapan web.