formations/cesi/architecture_n_tiers/ressources/exercices/ex_microbloggr_solution/services/users/src/server.js

45 lines
996 B
JavaScript

const express = require('express');
const app = express();
const bodyParser = require('body-parser');
const morgan = require('morgan');
const users = require('./users');
app.use(morgan('combined'));
// On utilise le module "body-parser"
// pour faciliter la désérialisation des données
// des appels à l'API
app.use(bodyParser.json());
// POST /auth
// Effectue une authentification pour un couple d'identifiants donné
app.post('/auth', (req, res) => {
const credentials = req.body;
if(!credentials.username || !credentials.password) {
return res.status(200).send({
ok: false,
error: "Identifiants invalides.",
});
}
const user = users[credentials.username];
if (!user || user.password !== credentials.password) {
return res.status(200).send({
ok: false,
error: "Identifiants invalides.",
});
}
return res.status(200).send({
ok: true,
user,
});
});
app.listen(8080, () => console.log('listening on port 8080'));