MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Hỗ trợ cho nhiều kiểu người dùng bằng Passport-local mongoose node.js

Sau khi xem qua tài liệu của passport.js (kudo cho Jared), tôi hiểu rằng mình đã làm sai hầu hết mọi thứ.

  1. Đã tạo hai localStrategies

    passport.use('userLocal', new LocalStrategy(User.authenticate())); passport.use('clientLocal', new LocalStrategy(Client.authenticate()));

và để xác thực,

passport.authenticate('userLocal')(req, res, function () {
    res.redirect('/profile');
  });
and
passport.authenticate('clientLocal')(req, res, function () {
    res.redirect('/client');
  });
  1. Đã sử dụng mô-đun hộ chiếu (l =không sử dụng mô-đun passport-local-mongoose) cho serializeUser và deseriealizeUser.

    passport.serializeUser(function(user, done) { done(null, user); });

    passport.deserializeUser(function(user, done) { if(user!=null) done(null,user); });

Toàn bộ lược đồ người dùng (đối tượng) hiện được lưu trữ trong yêu cầu và có thể được truy cập thông qua bất kỳ tuyến nào của bạn.

Hy vọng nó sẽ giúp những người khác gặp vấn đề tương tự.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cách tìm bản ghi ngẫu nhiên trong Mongoose

  2. Làm cách nào để truy vấn MongoDB trực tiếp từ Ruby thay vì sử dụng Mongoid?

  3. không thể khởi động máy chủ cục bộ mongodb

  4. Xóa trường được tìm thấy trong bất kỳ mảng mongodb nào

  5. Đẩy đến hai mảng riêng biệt trong một lệnh gọi cập nhật trong mongodb