全栈 Todolist-MongoDB 篇
confirm 确定以后,等到 status 状态由 pending --> Active 咋们就可以正常使用这个配置好的云数据库了。
{
"env": {
"MONGO_USER": "your-username",
"MONGO_PASSWORD": "your-password",
"MONGO_DB": "your-db-name"
}
}
username 和 password 在 database access 中配置过了,db-name 就是 Clusters 的 title,初始的名字一般为
Cluster0
{
"env": {
"MONGO_USER": "xxx", // 你配置的 username
"MONGO_PASSWORD": "xxx", // 配置的 password
"MONGO_DB": "Cluster0"
}
}
import express, { Express } from 'express';
import mongoose from 'mongoose';
import cors from 'cors';
import todoRoutes from './routes';
import bodyParser from 'body-parser';
const app: Express = express();
const PORT: string | number = 4000;
// const PORT: string | number = process.env.PORT || 4000;
console.log(process.env.PORT);
app.use(cors());
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(todoRoutes);
const uri: string = `mongodb+srv://${process.env.MONGO_USER}:${process.env.MONGO_PASSWORD}@cluster0.4qpw4.mongodb.net/${process.env.MONGO_DB}?retryWrites=true&w=majority`;
// 这段 url 来自mongoDB cloud
const options = { useNewUrlParser: true, useUnifiedTopology: true };
mongoose.set('useFindAndModify', false);
mongoose
.connect(uri, options)
.then(() =>
app.listen(PORT, () =>
console.log(`Server running on http://localhost:${PORT}`)
)
)
.catch((error) => {
throw error;
});
复制代码
yarn start