const login = (req, res) => {
const { email, password } = req.body;
let sql = "SELECT * FROM users WHERE email = ? AND password = ?";
let values = [email, password];
connection.query(sql, values, (err, results) => {
if (err) {
console.log(err);
return res.status(StatusCodes.BAD_REQUEST).end();
}
//여기가 로그인 성공 로직이면서 토큰 발급 로직이야
const loginUser = results[0];
if (loginUser && loginUser.password == password) {
const token = jwt.sign(
{
email: loginUser.email,
},
process.env.PRIVATE_KEY,
{
expiresIn: "1h", //1시간 유효
issuer: "songa",
}
);
res.cookie("token", token, {
httpOnly: true, //너 이거 http에서만 쓸 수 있어
});
console.log(token);
return res.status(StatusCodes.OK).json(results);
} else {
return res.status(StatusCodes.UNAUTHORIZED).end(); //401 이고 인증이 안되었어! 라는 뜻
}
});
};
