Skip to content
Snippets Groups Projects
Commit 127b9973 authored by Vytor Calixto's avatar Vytor Calixto :space_invader:
Browse files

Add validation to message API

parent 13d805e6
Branches
No related tags found
No related merge requests found
Pipeline #
......@@ -25,6 +25,7 @@
"debug": "~2.3.x",
"dirty-chai": "^1.2.2",
"express": "^4.13.0",
"express-validator": "^3.2.0",
"js2xmlparser": "^2.0.2",
"jwt-simple": "^0.5.0",
"lodash": "^4.17.2",
......
......@@ -22,8 +22,11 @@ const mongoose = require(`${libs}/db/mongoose`);
const db = mongoose();
const expressValidator = require('express-validator');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.urlencoded({ extended: true }));
app.use(expressValidator());
app.use(cookieParser());
// Enable Cross-Origin Resource Sharing (CORS)
app.use(cors());
......
......@@ -41,6 +41,14 @@ messageApp.put('/:id', (req, res, next) => {
});
messageApp.post('/', (req, res, next) => {
req.checkBody('name', 'Nome é um campo obrigatório').notEmpty();
req.checkBody('email', 'Email é um campo obrigatório').notEmpty();
req.checkBody('contents', 'O conteúdo da mensagem é um campo obrigatório').notEmpty();
req.getValidationResult().then(function(result) {
if (!result.isEmpty()) {
res.status(400).send({errors: result.array()});
return;
}
let message = new Message({
author: {
name: req.body.name,
......@@ -54,7 +62,8 @@ messageApp.post('/', (req, res, next) => {
res.status(500).json({error: 'Erro do servidor', text: 'O servidor encontrou um erro ao processar a requisição', err});
}
res.json(message);
})
});
});
});
module.exports = messageApp;
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment