server.js 1.97 KB
let express = require('express');
let bodyParser = require('body-parser');
let mongoose = require('mongoose');

let app = express();
let logid=null;
const uri = 'mongodb+srv://sjieu17:tjrwls147714@cluster0.lc6pe.mongodb.net/weather_briefing?retryWrites=true&w=majority';
let db = mongoose.connect(uri, (err) => {
	if (err) {
		console.log(err.message);
	} else {
		console.log('Succesfully Connected!');
	}
});

var UserSchema = new mongoose.Schema({
	name: String,
	id: String,
    password: String,
	gender:Number
});

var Users = mongoose.model('users', UserSchema);

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ limit: '1gb', extended: false }));

app.post('/signup', (req, res) => {
    Users.findOne({ id: req.body.id, password: req.body.password }, (err, user) => {
		if (err) return res.status(500).json({ message: '에러가 발생하였습니다.' });
		else if (user){
            res.send('이미 존재하는 사용자입니다.');
        }
		else{
            var new_user = new Users(req.body);

            new_user.save((err) => {
                if (err) return res.status(500).json({ message: '회원가입에 실패하였습니다.' });
                else return res.status(200).json({ message: '회원가입이 완료되었습니다.', data: new_user });
            });
        }
	});

});

app.post('/signin', (req, res) => {
	Users.findOne({ id: req.body.id, password: req.body.password }, (err, user) => {
		if (err) return res.status(500).json({ message: '에러가 발생하였습니다.' });
		else if (user){ 
            logid={id:user.id,password:user.password,name:user.name,gender:user.gender};
            return res.status(200).json({ message: '로그인 되었습니다.', data: user });
        }
		else return res.status(404).json({ message: '아이디와 비밀번호를 다시 확인해주세요.' });
	});
});
app.post('/logout',(req,res)=>{
    logid=null;
    res.send('로그아웃 되었습니다.');
});
app.listen(4000, () => console.log('Server On 4000'));