Created the authentication route

This commit is contained in:
2022-12-27 15:08:39 +01:00
parent 80e511a473
commit caaa5e2d82

22
server/routes/auth.js Normal file
View File

@ -0,0 +1,22 @@
const app = require('express').Router();
const jwt = require('jsonwebtoken');
const {validateSchema} = require("../util/validate");
const {authValidation} = require("../validations/auth");
const {getToken} = require("../controller/token");
const {authUser} = require("../controller/user");
app.post("/login", async (req, res) => {
const error = await validateSchema(authValidation, req.body);
if (error) return res.status(400).json({message: error});
let user = await authUser(req.body.username, req.body.password);
if (!user) return res.status(401).json({message: "Please use the correct username / password combination"});
const token = jwt.sign({userId: user.id}, getToken());
res.header("Authorization", token);
res.json({message: "Successfully logged in"});
});
module.exports = app;