尝试使用node命令提示符运行我的server.js会引发连接被拒绝错误

时间:2015-07-08 17:51:01

标签: html ajax node.js

当我尝试在node.js命令提示符下运行时

node server.js

它拒绝连接,尝试使用curl,同样如此。我的server.js:

  var express     = require('express');
    var app         = express();
    var mongoose     = require('mongoose');

    // Conexión con la base de datos
    mongoose.connect('mongodb://localhost:27017/angular-todo');

    // Configuración
    app.configure(function() {
        // Localización de los ficheros estáticos
        app.use(express.static(__dirname + '/public'));
        // Muestra un log de todos los request en la consola        
        app.use(express.logger('dev'));
        // Permite cambiar el HTML con el método POST                   
        app.use(express.bodyParser());
        // Simula DELETE y PUT                      
        app.use(express.methodOverride());
    });

    // Definición de modelos
    var Todo = mongoose.model('Todo', {
        text: String
    });

    // Rutas de nuestro API
    // GET de todos los TODOs
    app.get('/api/todos', function(req, res) {
        Todo.find(function(err, todos) {
            if(err) {
                res.send(err);
            }
            res.json(todos);
        });
    });

    // POST que crea un TODO y devuelve todos tras la creación
    app.post('/api/todos', function(req, res) {
        Todo.create({
            text: req.body.text,
            done: false
        }, function(err, todo){
            if(err) {
                res.send(err);
            }

            Todo.find(function(err, todos) {
                if(err){
                    res.send(err);
                }
                res.json(todos);
            });
        });
    });

    // DELETE un TODO específico y devuelve todos tras borrarlo.
    app.delete('/api/todos/:todo', function(req, res) {
        Todo.remove({
            _id: req.params.todo
        }, function(err, todo) {
            if(err){
                res.send(err);
            }

            Todo.find(function(err, todos) {
                if(err){
                    res.send(err);
                }
                res.json(todos);
            });

        })
    });

// Carga una vista HTML simple donde irá nuestra Single App Page
// Angular Manejará el Frontend
app.get('*', function(req, res) {
    res.sendfile('./public/index.html');
});

// Escucha en el puerto 8080 y corre el server
app.listen(8080, function() {
    console.log('App listening on port 8080');
});

端口8080已打开,因此没有运行java服务,也没有wamp / xampp。不知道从昨天开始这个问题是什么问题。

错误:

C:\Users\Pablo\Desktop\TODOLIST>node server.js
express deprecated app.configure: Check app.get('env') in an if statement server
.js:11:5
connect deprecated multipart: use parser (multiparty, busboy, formidable) npm mo
dule instead node_modules\express\node_modules\connect\lib\middleware\bodyParser
.js:56:20
connect deprecated limit: Restrict request size at location of read node_modules
\express\node_modules\connect\lib\middleware\multipart.js:86:15
connect deprecated methodOverride: use method-override npm module instead server
.js:19:21
App listening on port 8080

C:\Users\Pablo\Desktop\TODOLIST\node_modules\mongoose\node_modules\mongodb\lib\s
erver.js:228
        process.nextTick(function() { throw err; })
                                            ^
Error: connect ECONNREFUSED
    at exports._errnoException (util.js:746:11)
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1010:19)

1 个答案:

答案 0 :(得分:0)

也许尝试取出端口号,以便app.js中的行看起来像:

mongoose.connect('mongodb://localhost/angular-todo');

它对我有用!