我正在使用macO。我遵循了https://developer.mozilla.org/en-US/docs/Learn/Server-side/Express_Nodejs/development_environment和https://www.youtube.com/watch?v=1NrHkjlWVhM上的Web开发教程。这是一个安装了ff npm的简单节点应用程序:
请注意,我的计算机中未安装MongoDB,因为本教程并不需要。
这是我的代码:
const mongoose = require('mongoose')
mongoose.connect('mongodb://localhost/blog', {
useNewUrlParser: true,
useUnifiedTopology: true
}).catch(error => console.log(error))
我尝试将服务器地址更改为ff,但未成功
,并会不断获取ff错误日志。我该如何解决?
[nodemon] restarting due to changes...
[nodemon] starting `node server.js`
MongooseServerSelectionError: connect ECONNREFUSED 127.0.0.1:27017
at NativeConnection.Connection.openUri (/Users/Dave/Desktop/apps/test-blog/node_modules/mongoose/lib/connection.js:827:32)
at Mongoose.connect (/Users/Dave/Desktop/apps/test-blog/node_modules/mongoose/lib/index.js:335:15)
at Object.<anonymous> (/Users/Dave/Desktop/apps/test-blog/server.js:6:10)
at Module._compile (internal/modules/cjs/loader.js:1138:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1158:10)
at Module.load (internal/modules/cjs/loader.js:986:32)
at Function.Module._load (internal/modules/cjs/loader.js:879:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
at internal/main/run_main_module.js:17:47 {
reason: TopologyDescription {
type: 'Single',
setName: null,
maxSetVersion: null,
maxElectionId: null,
servers: Map { 'localhost:27017' => [ServerDescription] },
stale: false,
compatible: true,
compatibilityError: null,
logicalSessionTimeoutMinutes: null,
heartbeatFrequencyMS: 10000,
localThresholdMS: 15,
commonWireVersion: null
}
}
答案 0 :(得分:0)
请注意,我的计算机中未安装MongoDB,因为本教程没有要求
MongoDB URI mongodb://localhost:27017
指向本地计算机。换句话说,必须在本地计算机上安装MongoDB实例,才能使Node脚本连接到该实例。
请注意,通常,localhost
域及其等效IP地址127.0.0.1
保留用于在本地计算机上运行的服务。例如,在这种情况下,本地MongoDB实例应在localhost
域的默认27017
端口上运行,如错误消息中所示。
MongooseServerSelectionError:连接ECONNREFUSED 127.0.0.1:27017