Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana cara melakukan otentikasi di node.js yang dapat saya gunakan dari situs web saya?

Anda hanya perlu mengubah .authenticate metode. Karena menghubungkan ke database adalah (atau seharusnya) operasi asinkron, maka Anda perlu menambahkan promise objek (lihat setiap dokumentasi ).

Dengan asumsi Anda memiliki beberapa ORM dengan data pengguna yang sesuai dengan user objek dengan username dan password atribut (dalam contoh saya, saya akan menggunakan mesin luwak), ini adalah tampilannya:

.authenticate( function (login, password) {
    var promise = this.Promise(); /* setup promise object */

    /* asynchrnously connect to DB and retrieve the data for authentication */
    db.find({ username:login }, function(err, user) {
        if (err)
            return promise.fulfill([err]);
        if ((!user) || (user.password != password))
            return promise.fulfill(['Incorrect username or password!']);
        promise.fulfill(user);
    });

    return promise; /* return promise object */
})

Saya tidak mengujinya, tetapi menurut dokumentasi itu seharusnya berfungsi. Ingat bahwa kesalahan seharusnya disimpan dalam array.

Omong-omong:jika Anda hanya menggunakan metode kata sandi, maka tidak perlu, Anda tahu, menggunakan meriam melawan lalat. :) Menulis mekanisme otentikasi Anda sendiri (tidak harus sempurna, tetapi berfungsi) sangat sederhana dan jika Anda tidak tahu bagaimana melakukannya, Anda harus mempelajarinya. Ini akan menguntungkan di masa depan, karena otentikasi dan keamanan secara umum sangat penting di setiap aplikasi web.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dapatkan semua tahun unik dari kolom tanggal menggunakan SQL (MySQL)

  2. PHP/MySQL:Model acara yang berulang dalam database tetapi kueri untuk rentang tanggal

  3. Bagaimana saya bisa mencari (tidak peka huruf besar/kecil) di kolom menggunakan wildcard LIKE?

  4. pengkodean karakter aneh dari data yang disimpan, skrip lama menunjukkan kepada mereka yang baru tidak

  5. Bagaimana cara menghitung hari antara dua tanggal di PHP?