MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Panggilan Balik di Operasi MongoDB Dengan Node.js

Anda memanggil fungsi panggilan balik segera, tetapi pergi ke db membutuhkan waktu dan karena itu dilakukan secara asinkron. Sebagai gantinya, panggil callback Anda pada waktu yang tepat menggunakan argumen hasil dari fungsi yang diteruskan sebagai parameter terakhir ke .findOne() fungsi. Callback harus mendapatkan argumen kesalahan dan argumen hasil:

login: function(user, pass, callback) {
    db.open(function (err, db) {
        if(!err) {
            db.collection("users", function(err, collection) {
                collection.findOne(
                    {
                        "username": user,
                        "password": pass
                    },
                    function(err, item) {
                        if(!err) {
                            callback(null,item);
                        } else {
                            callback("error");
                        }
                    }
                );
            });
        } else {
            callback("error",null);
        }
    });
}


user.login("test", "test", function(err,msg) {
    if( err ) {
      //error occured above;
    } else {
      //success
      console.log(msg);
    }
});

ini hanya menarik pola yang sama dengan yang digunakan driver mongodb. semoga membantu.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. SQL NULLIF() Dijelaskan

  2. Mengekstrak, memodelkan, dan mengubah model data, dengan mongoid/mongodb

  3. Cara mengurutkan hasil berdasarkan panjang string di MongoDB

  4. Cara menggunakan agregat di mongodb ke $match _id

  5. res.redirect menampilkan informasi lama setelah pengiriman formulir?