Pertanyaan Bagaimana cara menggunakan Login Sederhana Firebase dengan email & kata sandi


Proses masuk Firebase Simple menyediakan email / kata sandi pilihan, bagaimana cara menggunakannya? Mulai dari membuat pengguna, menyimpan data untuk pengguna itu, hingga masuk dan keluar.


32
2018-03-01 22:33


asal


Jawaban:


Ada tiga langkah berbeda yang harus dilakukan (anggap saja Anda memiliki jQuery):

1. Atur callback Anda

var ref = new Firebase("https://demo.firebaseio-demo.com");
var authClient = new FirebaseAuthClient(ref, function(error, user) {
  if (error) {
    alert(error);
    return;
  }
  if (user) {
    // User is already logged in.
    doLogin(user);
  } else {
    // User is logged out.
    showLoginBox();
  }
});

2. Pendaftaran pengguna

function showLoginBox() {
  ...
  // Do whatever DOM operations you need to show the login/registration box.
  $("#registerButton").on("click", function() {
    var email = $("#email").val();
    var password = $("#password").val();
    authClient.createUser(email, password, function(error,  user) {
      if (!error) {
        doLogin(user);
      } else {
        alert(error);
      }
    });
  });
}

3. Login pengguna

function showLoginBox() {
  ...
  // Do whatever DOM operations you need to show the login/registration box.
  $("#loginButton").on("click", function() {
    authClient.login("password", {
      email: $("#email").val(),
      password: $("#password").val(),
      rememberMe: $("#rememberCheckbox").val()
    });
  });
}

Ketika proses masuk berhasil, panggilan yang Anda daftarkan pada langkah 1 akan dipanggil dengan objek pengguna yang benar, pada titik mana kita memanggil doLogin(user) yang merupakan metode yang harus Anda terapkan.

Struktur data pengguna sangat sederhana. Ini adalah objek yang mengandung properti berikut:

email: Alamat email pengguna id: ID numerik unik (penambahan otomatis) untuk pengguna

FirebaseAuthClient akan secara otomatis mengautentikasi firebsae Anda, bukan tindakan lebih lanjut yang diperlukan. Anda sekarang dapat menggunakan sesuatu seperti berikut ini dalam aturan keamanan Anda:

{
  "rules": {
    "users": {
      "$userid": {
        ".read": "auth.uid == $userid",
        ".write": "auth.uid == $userid"
      }
    }
  }
}

Ini berarti, jika User ID saya 42, hanya saya yang bisa menulis atau membaca example.firebaseio-demo.com/users/42 - ketika saya login - dan tidak ada orang lain.

Perhatikan bahwa Login Sederhana tidak menyimpan informasi tambahan tentang pengguna selain dari ID dan email mereka. Jika Anda ingin menyimpan data tambahan tentang pengguna, Anda harus melakukannya sendiri (mungkin dalam callback sukses untuk createUser). Anda dapat menyimpan data ini karena Anda biasanya akan menyimpan data apa pun di Firebase - hanya berhati-hati tentang siapa yang dapat membaca atau menulis ke data ini!


41
2018-03-01 22:33



Cukup masukkan seseorang ke utas ini dan cari beberapa contoh aplikasi menggunakan otentikasi firebase. Berikut dua contohnya

var rootRef = new Firebase('https://docs-sandbox.firebaseio.com/web/uauth');
......
.....
....

http://jsfiddle.net/firebase/a221m6pb/embedded/result,js/

http://www.42id.com/articles/firebase-authentication-and-angular-js/


4
2018-05-04 03:11