Olá fiz o arquivo cafastra-livros-terminal.js com o conteúdo:
var http = require('http');
var configuracoes = {
hostname: 'localhost',
port:3000,
path: '/produtos',
method: 'post',
headers: {
'Accept': 'application/json',
'Content-type': 'application/json'
}
};
var client = http.request(configuracoes, function(res){
console.log("Code: " + res.statusCode);
res.on('data', function(body){
console.log('Corpo:' +body);
});
});
var produto = {
titulo : 'mais sobre o node',
descricao : 'node, javascript e um pouco de http',
preco : 29.50
}
client.end(JSON.stringify(produto));
Inseri o body.parser no express.js
app.use(bodyParser.json());
E alterei o produtos.js
app.get('/produtos',function(req,res){
var connection = app.infra.connectionFactory();
var produtosDAO = new app.infra.ProdutosDAO(connection);
produtosDAO.lista(function(err,results){
res.format({
html: function(){
res.render('produtos/lista',{lista:results});
},
json: function(){
res.json(results)
}
});
});
connection.end();
});
Mas o resultado que aparece quando rodo no terminal o node cadastra-livros-terminal.js é o seguinte:
Code: 404
Corpo:Cannot POST /produtos