Javascript 何时关闭mongodb中的连接?

Javascript 何时关闭mongodb中的连接?,javascript,node.js,mongodb,rest,express,Javascript,Node.js,Mongodb,Rest,Express,我使用NodeJS express、mongodb进行API和mongoClient进行连接。我获取数据,它工作正常,我尝试在不刷新它的情况下抛出错误“拓扑已关闭” const express=require(“express”) const router=express.router() //const bodyParser=require(“主体解析器”) const client=require(“/客户”) //use(bodyParser.json()); //use(bodyPar

我使用NodeJS express、mongodb进行API和mongoClient进行连接。我获取数据,它工作正常,我尝试在不刷新它的情况下抛出错误“拓扑已关闭”

const express=require(“express”)
const router=express.router()
//const bodyParser=require(“主体解析器”)
const client=require(“/客户”)
//use(bodyParser.json());
//use(bodyParser.urlencoded({extended:true}));
路由器.get(“/users”),异步(req,res)=>{
控制台日志(“rouete 3”)
试试{
client.connect()
var db=await client.db(“mydb”)
var collection=await db.collection(“myDataCol”)
var cvb=await collection.find().toArray()
res.json(cvb)
控制台日志(cvb)
}
catch(er){console.log(`something出错:${er}`)
res.json({“scas”:er})
最后{client.close(()=>{console.log(“closed”)}
})
module.exports=路由器

形式
新用户



不要在路由中连接到mongo客户端,在索引或启动文件中连接并从那里传递它。整个应用程序从开始到结束都应打开DB连接。

是否应在所有路由结束时关闭?DB连接应在路由之外。您的申请应遵循以下列表。1-应用程序启动2-db连接打开3-routes和其他功能4-db连接关闭5-应用程序停止非常感谢但还有一个问题,我在应用程序结束时关闭,但当我刷新html页面并尝试获取数据时,它显示拓扑已关闭,您应保持应用程序打开,直到完成所有操作。因此,只要您想使用html页面获取数据,就必须有一个开放的服务器和数据库连接。我的建议是寻找合适的人选。当您进行更改时,此工具将自动重新启动服务器,因此您不必手动进行更改。(这是仅用于开发的工具,请勿在生产中使用)