반응형
연결
const MongoClient = require('mongodb').MongoClient;
var database;
function connectDB(){
//db 연결정보
var databaseUrl = 'mongodb://localhost:27017/local';
//db 연결
mongoClient.connect(databaseUrl, function(err, db){
if(err) {throw err; }
console.log('db에 연결됬습니다. :'+ databaseUrl );
//db 변수에 할당
database = db.db('local');
})
}
////////////////
app.listen(app.get('port'), function(){
console.log('Server Started '+ app.get('port'));
//db연결
connectDB();
});
참고
사용자 추가
// 사용자 추가
var addUser = function(database,id,password, name, callback){
console.log('adduser 호출됨 '+ id);
var users = database.collection('users');
users.insertMany([{"id":id, "password":password, "name":name}], function(err, result){
if(err) {
callback(err, null);
return;
}
if(result.insertedCount >0){
console.log('사용자 추가됨 :' + result.insertedCount);
}else{
console.log('추가된 거 없음');
}
callback(null, result);
});
}
사용자 인증
//사용자 인증
var authUser = function(database,id, password, callback){
console.log('authUser 함수 호출됨');
//users 컬렉션 참조
var users = database.collection('users');
users.find({"id":id, "password":password}).toArray(function(err,docs){
if(err){
callback(err,null);
console.log(err.stack);
return;
}
//일치하는 사용자가 있으면
if(docs.length>0){
console.log('아이디 %s, 비번 %s 일치하는 ㅅ 찾음', id,password);
callback(null,docs);
}else{
console.log('아이디, 비번 일치하는 ㅅ 못 찾음');
callback(null,null);
}
});
}
반응형
'IT > web' 카테고리의 다른 글
Node.js] crypto 모듈로 비밀번호 암호화하기 (0) | 2020.01.31 |
---|---|
Node.js] Mongoose 모듈로 DB 연결, 사용자 추가, 사용자 인증 (0) | 2020.01.28 |
Node.js] try, catch, throw (0) | 2020.01.26 |
Node.js] console.log // dir // table .. (0) | 2020.01.25 |
Node.js] 파일 업로드, multer 미들웨어 (0) | 2020.01.25 |
댓글