1
0
mirror of https://github.com/dap-ps/discover.git synced 2025-02-08 07:25:07 +00:00
2019-06-03 21:01:42 +03:00

30 lines
846 B
JavaScript

class ResponseCutSensitivesMiddleware {
static cutSensitives(req, res, next) {
res.jsonCutSensitives = function (response, sensitives) {
if (response instanceof Array) {
for (let i = 0; i < response.length; i++) {
response[i] = cutProperties(response[i], sensitives);
}
} else {
response = cutProperties(response, sensitives);
}
res.json(response);
}
next();
}
}
const cutProperties = function (objectToCut, sensitiveProps) {
let copiedResponse = JSON.parse(JSON.stringify(objectToCut));
for (const sensitiveProp of sensitiveProps) {
copiedResponse[sensitiveProp] = undefined;
}
return copiedResponse;
}
module.exports = ResponseCutSensitivesMiddleware.cutSensitives;