Tôi đã thực hiện ứng dụng nodejs đơn giản bằng cách sử dụng nodejs + express. Bây giờ tôi muốn làm cho xác thực người dùng. Tôi muốn thực hiện xử lý phiên bằng cách sử dụng mongoose. Bạn có thể tư vấn cho một số ví dụ không?Làm cách nào để thực hiện xác thực với Node.js, Express và Mongoose?
Trả lời
Một số liên kết hữu ích:
how to implement login auth in node.js
creating registration and login form in node.js and mongodb
Ngoài ra quản lý phiên không được thực hiện bởi Mongoose, nhưng bằng cách kết nối-MongoDB hoặc kết nối-redis. Bạn có thể kiểm một ví dụ về cách làm auth sử dụng và quản lý phiên làm việc trong một ứng dụng thực tế ở đây:
https://github.com/alexyoung/nodepad/blob/master/app.js
giải thích sâu hơn cho các ứng dụng mà bạn có thể tìm thấy ở đây: http://dailyjs.com/tag/lmawa hoặc http://dailyjs.com/2010/12/06/node-tutorial-5/
Chỉ cần sử dụng mongoose- auth by Brian Noguchi https://github.com/bnoguchi/mongoose-auth
Đó là một giải pháp giảm cho câu hỏi của bạn, nó được ghi chép và mở rộng.
EDIT
mongoose-auth
không còn được duy trì. Nếu bạn cần làm cho nó hoạt động với các phiên bản mới hơn của mongoose (v3.xx) và express (tức là> v3.xx), đây là một đoạn trích từ một tập tin package.json
Tôi hiện đang sử dụng trong sản xuất (It's hacky but it công trình):
"everyauth": "https://github.com/bnoguchi/everyauth/tarball/express3",
"mongoose-3x-types": "~1.0.5",
"mongoose-auth": "https://github.com/cbou/mongoose-auth/tarball/everymodule-fix",
tôi bạn đang bắt đầu một dự án mới không sử dụng mongoose-auth
, thay vì thử passport. Nó cung cấp các chức năng tương tự, nó rất linh hoạt, tuy nhiên nó có một api khác nhau. Đó là một phần của khung công tác MV locomotive và do đó nó được duy trì tích cực.
tôi đã đăng một ví dụ hoàn chỉnh của một hệ thống xác thực hoàn toàn sử dụng mongoose + expressjs trên đây, trong trường hợp bạn muốn có một cái nhìn:
Simple login page in nodejs using express and passport with mongodb
- 1. Làm cách nào để thực hiện cuộc gọi JSONP với JQuery với Xác thực cơ bản?
- 2. Làm thế nào để thực hiện việc tải lên thông qua s3 trên Heroku với node.js?
- 3. Node.js xác thực api REST và OAuth2
- 4. Làm cách nào để thực hiện Xác thực Cơ bản với Máy khách ADB Axis2?
- 5. Node.js: Cách thực hiện điều gì đó trên tất cả các yêu cầu HTTP trong Express?
- 6. Làm cách nào để triển khai các thư mục ảo với node.js và express?
- 7. Lỗi xác thực Redis với Node.js và socket.io
- 8. Làm cách nào để thực hiện xác thực Sinatra LDAP thực sự đơn giản?
- 9. Mongoose - xác thực cú pháp email
- 10. Cách nào tốt hơn để thực hiện tổng thời gian thực thi ứng dụng Node.js?
- 11. Làm thế nào để sử dụng SCSS với Express? (Node.js)
- 12. Xác thực HTTP REST - Cách thực hiện?
- 13. Cách sử dụng jsonp với node.js express
- 14. Tôi làm cách nào để sử dụng xác thực lược đồ hiện đại/khác với .Net?
- 15. Làm thế nào để sử dụng mongoose-joins cho Node.js
- 16. Node.js và Express trên Windows
- 17. Làm cách nào để xác thực giá trị combobox jQuery UI với Plugin xác thực jQuery?
- 18. cách chính xác để thực hiện jQuery với require.js
- 19. Làm cách nào để thực hiện nhiều xác thực bằng Devise Omniauth + (Facebook, Twitter, Google)?
- 20. Cách chính xác để thực hiện ThreadPool.RegisterWaitForSingleObject
- 21. Làm cách nào để Xác thực với CRM 2011?
- 22. Cách để thực hiện regex tốt hơn trong Node.js
- 23. Làm cách nào để thực hiện xác thực cơ bản qua HTTP trong Ruby?
- 24. Node.js Express so với Flatiron
- 25. Làm thế nào để bạn thực hiện Node.js nói chuyện với một dịch vụ SOAP?
- 26. Trạng thái xác thực chuyển qua node.js
- 27. Làm cách nào để thực hiện xác thực HTTP trong Android?
- 28. node.js express app.get và app.post
- 29. Làm cách nào để thực hiện việc đăng nhập PKCS7 này trong node.js?
- 30. Cuộc gọi API đơn giản với Node.js và Express
Chỉ cần thả chải SO và thấy điều này. Mongoose-auth là tuyệt vời, nhưng nó đã không được cập nhật trong mãi mãi và vì nó ngồi nó có rất nhiều mã không dùng nữa. – Swordfish0321
rất đúng, có vẻ như dự án không còn được duy trì nữa. AFAIK, Việc sử dụng lib hiện tại là [hộ chiếu] (https://github.com/jaredhanson/passport) –
đã cập nhật câu trả lời –