Khi findOne
truy vấn không tìm thấy ít nhất một tài liệu phù hợp, tham số thứ hai của lệnh gọi lại (trong trường hợp này là user
) được đặt thành null
. Đó không phải là lỗi, vì vậy err
cũng là null
. Vì vậy, những gì bạn đang thấy là phản hồi không tìm thấy so khớp được mong đợi.
Cập nhật
Lưu ý rằng findOne
đã không còn được dùng trong trình điều khiển 2.0, nhưng việc thay thế nó cũng thể hiện hành vi tương tự:
users.find({'fb_id' : fbUserMetadata.id}).limit(1).next(err, doc) {
// doc is null if a matching document wasn't found
});