Initial commit
This commit is contained in:
parent
a13ceef804
commit
8641fc9723
19 changed files with 303532 additions and 0 deletions
62
libs/Format.js
Normal file
62
libs/Format.js
Normal file
|
@ -0,0 +1,62 @@
|
|||
/**
|
||||
* Fonction permettant de formater une réponse API
|
||||
* @param {Object} req
|
||||
* @param {Object} res
|
||||
* @param {Functiont} next
|
||||
* @param {Object} err
|
||||
* @param {Object} response {code: Integer, res: Array/Object}
|
||||
*/
|
||||
const _formatResponse = (req, res, next, err, response) => {
|
||||
if (err) {
|
||||
req.response = response;
|
||||
next(err);
|
||||
} else {
|
||||
switch (req.method) {
|
||||
case "GET":
|
||||
res
|
||||
.status(response ? 200 : 204)
|
||||
.json(response)
|
||||
.end();
|
||||
break;
|
||||
case "PATCH":
|
||||
res
|
||||
.status(200)
|
||||
.json(response)
|
||||
.end();
|
||||
break;
|
||||
case "DELETE":
|
||||
res
|
||||
.status(200)
|
||||
.json(response)
|
||||
.end();
|
||||
break;
|
||||
case "POST":
|
||||
res
|
||||
.status(201)
|
||||
.json(response)
|
||||
.end();
|
||||
break;
|
||||
default:
|
||||
next(new Error("Not implemented"));
|
||||
break;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Fonction permettant de formater une erreur
|
||||
* @param {Object} res
|
||||
* @param {Object} err
|
||||
*/
|
||||
const _formatResponseError = (res, err) => {
|
||||
const code = err.errorCode || 500;
|
||||
const response = {
|
||||
code,
|
||||
message: err.message
|
||||
};
|
||||
|
||||
res.status(Math.trunc(code)).json(response);
|
||||
};
|
||||
|
||||
export const formatResponse = _formatResponse;
|
||||
export const formatResponseError = _formatResponseError;
|
Loading…
Add table
Add a link
Reference in a new issue