搭建服务器
- 新建项目 打开
- 初始化
package.json
终端输入npm init
- 入口文件
server.js
我修改了入口文件和写入了作者的信息
- 在当前项目安装需要的模块
npm install express
- 引入express 实例化 app
const express = require('express')
const app = express()
const port = process.env.PORT || 5000
app.listen(port,()=>{
console.log(`server running on port ${port}`)
})
- 设置一个路由
app.get('/',(req,res)=>{
res.send('hello world')
})
终端输入 node server.js
就会在根路径的页面看到 hello world
-
安装
nodemon
nodemon
的作用是避免每次修改都要重启的繁琐步骤
sudo npm install nodemon -g
通过nodemon server.js
启动 -
改造
package.json
的scripts
// 前面通过 npm run start 线上打包启动
// 后面通过 npm run server 本地启动
"scripts":{
"start":"node server.js",
"server":"nodemon server.js"
}
出现以下证明服务器启动成功
端口
连接数据库
连接mongoDB数据库
安装mongoDB数据库 移步 https://blog.csdn.net/weixin_43883485/article/details/104534533
安装 mongoose
npm install mongoose
引入 mongoose
const mongoose = require("mongoose")
把 地址放到另外一个文件里
新建 db.js
在 db.js
中 写入本地数据库的地址名称
在这步前首先要创建mongo
数据库testDB
如果有 Navicat Premium
可以通过可视化界面新建
然后双击 testDB
便开启 此数据库
终端新建数据库 testDB
–输入mongodb启动服务器
–输入mongo连接mongodb
show databases //显示当前所有数据库
use testDB //进入testDB数据库 如果没有testDB数据库 会创建testDB数据库
db //显示当前的数据库
接下来填入数据库地址 向外暴露
module.exports = {
mongoURI:"mongodb://127.0.0.1/testDB"
}
回到 server.js
引入
const db = require("./db.js").mongoURI;
// 连接数据库
// mongoose.connect("mongodb://127.0.0.1/testDB",{useMongoClient:true})
mongoose.connect(db,{useMongoClient:true})
.then(()=>console.log('mongoDB is connected'))
.catch(err=>console.log(err))
在终端重启 server.js
便能看到数据库连接成功的提示
出现了两个警告提示 此时数据库是连接成功了的
解决警告
DeprecationWarning: current URL string parser is deprecated, and will be removed in a future version. To use the new parser, pass option { useNewUrlParser: true } to MongoClient.connect.
DeprecationWarning: current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.
可能之前那种连接方式不适用新版本
改成下面的
mongoose.connect(db, { useNewUrlParser: true, useUnifiedTopology: true });
mongoose.connection.once('open',() => {
console.log("mongoDB is connected")
});
启动就正常了
接下来就可以开始写接口了