Commit 127b9973 authored by Vytor Calixto's avatar Vytor Calixto 👾

Add validation to message API

parent 13d805e6
Pipeline #9789 failed with stage
in 3 minutes and 42 seconds
......@@ -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,20 +41,29 @@ messageApp.put('/:id', (req, res, next) => {
});
messageApp.post('/', (req, res, next) => {
let message = new Message({
author: {
name: req.body.name,
email: req.body.email
},
contents: req.body.contents
});
message.save((err) => {
if(err) {
res.status(500).json({error: 'Erro do servidor', text: 'O servidor encontrou um erro ao processar a requisição', err});
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;
}
res.json(message);
})
let message = new Message({
author: {
name: req.body.name,
email: req.body.email
},
contents: req.body.contents
});
message.save((err) => {
if(err) {
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;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment