45 lines
996 B
JavaScript
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'));
|
|
|