MongoDB无法连接到服务器

时间:2018-09-26 23:55:23

标签: node.js mongodb express mongoose mern

编辑:我尝试了几个不同的端口,杀死了端口上的任务,然后再试一次,它不起作用。

今天,我开始了关于MERN堆栈的教程,但是我无法连接到服务器。 使用npm run server时出现以下错误: Error Message

我安装了推荐的node版本,使用npm i来安装express,mongoose,body-parser,并发和nodemon。 我遵循了教程的每个步骤,但无法正常工作。

这些是我的文件:

server.js

const express = require('express');
const mongoose = require('mongoose');
const bodyParser = require('body-parser');


const app = express();

// Bodyparser Middleware
app.use(bodyParser.json());

// DB Config
const db = require('./config/keys').mongoURI;

// Connect to Mongo
mongoose
  .connect(db, {useNewUrlParser: true}) // Adding new mongo url parser
  .then(() => console.log('MongoDB Connected...'))
  .catch(err => console.log(err));

const port = process.env.PORT || 5000;

app.listen(port, () => console.log(`Server started on port ${port}`));

package.json

{
  "name": "mern_shopping_list",
  "version": "1.0.0",
  "description": "Shopping list built with the MERN stack",
  "main": "server.js",
  "scripts": {
    "start": "node server.js",
    "server": "nodemon server.js"
  },
  "author": "Mario Hess",
  "license": "ISC",
  "dependencies": {
    "body-parser": "^1.18.3",
    "concurrently": "^4.0.1",
    "express": "^4.16.3",
    "mongoose": "^5.2.17"
  },
  "devDependencies": {
    "nodemon": "^1.18.4"
  }
}

keys.js(是的,我编辑了“我的名字”和“密码”!)

module.exports = {
    mongoURI:'mongodb://<MYNAME>:<MYPASSWORD>@ds115193.mlab.com:15193/servasdu'
}

2 个答案:

答案 0 :(得分:0)

错误说,另一个任务当前正在使用端口5000。然后,解决方案是将端口更改为其他端口。例如:

const port = process.env.PORT || 5050;

这是另一种选择。如果您使用的是Windows操作系统,请尝试以下操作:

在您的命令行中:

netstat -aon | findstr :5000

您将获得以下内容:

enter image description here

然后:

taskkill /pid xxxxx /f

xxxxx需要在右侧替换为process IDs。在大多数情况下,排名靠前的pid是我们所需要的。

这样做,您将终止当前占用端口5000的任务。

答案 1 :(得分:0)

尝试一下:

temp_list = [element for element in sentence_pad]
vocabulary_dim = np.max(np.unique(temp_list)) + 1

我已经为您创建了该数据库。如您所见,一切都很好。

enter image description here

希望我的回答会有所帮助!