0

我正在尝试将此 nodeJS 服务器部署为 azure 中的 Web API 应用程序,但我似乎无法运行它,在修复了 verious 对象后,我不断收到其他错误并且似乎无法启动并运行此 api。所以请帮帮我。这是我得到的错误:在此处输入图像描述


我正在使用调试控制台检查是否可以部署此节点,这是我不断出错的地方,但我似乎无法启动并运行此 api,请帮助。

4

1 回答 1

0

getaddrinfo ENOTFOUND表示 mongodb 客户端无法连接到给定地址。

您可以尝试检查您的mongodb server本地,EG

我在 Azure 上的 ubuntu VM 上创建了一个 mongodb 服务器,如在 Windows VM 上安装 MongoDB 所示,然后利用以下代码片段,这对我来说可以正常工作:

var MongoClient = require('mongodb').MongoClient;
var connectionString = 'mongodb://<server_name>.cloudapp.net:27017/';
MongoClient.connect(connectionString,function(err,db){
    if(err){
        console.log(err);
        res.send(200,{message:'Something went wrong when connecting to db'});
    }else{
        db.close();
        res.send(200,{message:'Connected correctly to db'});
    }
})

更新

我在 Azure Web Apps 上创建了一个简单的测试代码项目,尝试重现该问题,但它在我这边运行良好,我想指出我的环境和代码片段以供参考:

我的依赖:

"dependencies": {
    "jade": "*",
    "express": "~3.1.0",
    "mongoose":"*"
  },

我使用 MongoLab connectionString 的猫鼬代码片段:

exports.index = function(req, res){
    var mongoose = require('mongoose');
   mongoose.connect('mongodb://<dbuser>:<dbpassword>@ds058048.mongolab.com:58048/<dbname>');
    var db = mongoose.connection;
    db.on('error', console.error.bind(console, 'connection error:'));
    db.once('open', function (callback) {
        console.log('db open!');
        res.send(200,{message:'Connected correctly to db'});
    });
};

连接字符串显示为MongoLab提及的快速入门指南。

于 2016-01-11T05:31:05.723 回答