Ao executar no terminal estou recebendo o seguinte erro:
events.js:141
throw er; // Unhandled 'error' event
^ Error: socket hang up
at createHangUpError (_http_client.js:200:15)
at Socket.socketOnEnd (_http_client.js:292:23)
at emitNone (events.js:72:20)
at Socket.emit (events.js:166:7)
at endReadableNT (_stream_readable.js:913:12)
at nextTickCallbackWith2Args (node.js:442:9)
at process._tickCallback (node.js:356:17)
Não consigo encontrar o que eu fiz de errado. O meu código: produtos.js
module.exports = function(app) {
app.get('/produtos', function(req, res) {
var connection = app.infra.connectionFactory();
var produtosDAO = new app.infra.ProdutosDAO(connection);
produtosDAO.lista(function(error, result) {
res.format({
html: function() {
res.render('produtos/lista', {lista: result});
},
json: function() {
res.json(result);
}
})
});
connection.end();
});
app.get('/produtos/form', function(req, res) {
res.render('produtos/form');
});
app.post('/produtos', function(req, res) {
var produto = req.body;
var connection = app.infra.connectionFactory();
var produtosDAO = new app.infra.ProdutosDAO(connection);
produtosDAO.salva(produto, function(error, result) {
res.redirect('/produtos');
});
connection.end();
});
}
express.js
var app = require('express')();
var bodyParser = require('body-parser');
var load = require('express-load');
app.set('view engine', 'ejs');
app.set('views', './app/views');
app.use(bodyParser.urlencoded({extended: true}));
app.use(bodyParser.json());
module.exports = function() {
load('routes', {cwd: 'app'})
.then('infra')
.into(app);
return app;
}
cliente-android.js
var http = require('http');
var configuracoes = {
hostname: 'localhost',
port: 3000,
path: '/produtos',
headers: {
'Accept': 'application/json',
'Content-type': 'application/json'
}
}
var client = http.request(configuracoes, function(res) {
console.log(res.statusCode);
res.on('data', function(body) {
console.log(body.toString());
});
});
var produto = {
titulo: 'Nodejs',
preco: 150.00,
descricao: 'Uma estudo completo das features do Nodejs'
}
client.end(JSON.stringify(produto));