通过Mongoose将mLab连接到Node

时间:2018-01-17 23:42:09

标签: node.js mongodb mlab

我正在尝试按照本教程:https://medium.com/@bryantheastronaut/react-getting-started-the-mern-stack-tutorial-feat-es6-de1a2886be50

我被卡住了,因为我找不到将mLab数据库连接到节点的方法。我已经发现<>需要从字符串中删除用户名和密码,但我仍然无法连接它。

mongoose.connect( '的mongodb:// Testerxxx:Testxxx@ds157057.mlab.com:57057 / testxxxx');

日志显示错误:

(node:91198) DeprecationWarning: `open()` is deprecated in mongoose >= 4.11.0, use `openUri()` instead, or set the `useMongoClient` option if using `connect()` or `createConnection()`. See http://mongoosejs.com/docs/connections.html#use-mongo-client
09:37:34 api.1   |  events.js:183
09:37:34 api.1   |        throw er; // Unhandled 'error' event
09:37:34 api.1   |        ^
09:37:34 api.1   |  Error: listen EADDRINUSE :::3001
09:37:34 api.1   |      at Object._errnoException (util.js:1022:11)
09:37:34 api.1   |      at _exceptionWithHostPort (util.js:1044:20)
09:37:34 api.1   |      at Server.setupListenHandle [as _listen2] (net.js:1351:14)
09:37:34 api.1   |      at listenInCluster (net.js:1392:12)
09:37:34 api.1   |      at Server.listen (net.js:1476:7)

当我点击此错误的自述文件链接:http://mongoosejs.com/docs/connections.html#use-mongo-client时,我实际上看不到任何与教程中的说明不同的说明。

任何人都可以从中看出这是什么问题。我使用了Mongo DB连接页面中的确切字符串,在前面插入了mongoose.connect位。

有人能指出更详细的连接到mLab的说明吗?

另一个假设:

当我运行npm run start-dev时,终端会显示一条消息:

本地:http://localhost:3000/ 12:58:52 web.1 |在您的网络上:http://10.0.0.2:3000/ 12:58:52 web.1 |

但是,我要检查的页面是端口3001(根据教程)。我的server.js文件还要求使用3001端口:

var port = process.env.API_PORT || 3001;

也许我无法获得mLab连接响应的原因与端口的差异有关。如果是这种情况,我不明白,因为到目前为止,我已经按照设置中的教程进行了操作。

0 个答案:

没有答案