繁体   English   中英

什么时候关闭mongodb中的连接?

[英]when to close connection in mongodb?

我使用 node js express,mongodb 作为 API 和 mongoClient 进行连接。 我获取数据它工作正常,我尝试不刷新它会引发“拓扑已关闭”的错误

 const express=require("express") const router=express.Router() // const bodyParser =require("body-parser") const client=require("./client") // express.use(bodyParser.json()); // express.use(bodyParser.urlencoded({ extended: true })); router.get("/users", async(req,res)=>{ console.log("rouete 3") try{ client.connect() var db= await client.db("mydb") var collection= await db.collection("myDataCol") var cvb= await collection.find().toArray() res.json(cvb) console.log(cvb) } catch(er){ console.log(`SOMETHINGS WENT WRONG: ${er}`) res.json({"scas":er})} finally{ client.close(()=>{console.log("closed")}) } }) module.exports=router
 <html> <head> <title>form</title> </head> <body> <h2>New User</h2> <hr/> <!-- <form action="/user" method="POST"> <input type="text" name="name"> <input type="text" name="lastName"> <input type="submit"> </form> <hr> <form action="/user/delete" method="POST"> <input type="text" name="name" > <input type="text" name="lastName"> <input type="submit"> </form> --> <hr> <form action="/users" method="GET"> <input type="submit"> </form> </body> </html>

在此处输入图像描述,当我禁用 client.close() 时,它会再次工作并在每次单击底部获取数据时获取数据

不要连接到路由中的 mongo 客户端,连接到索引或启动文件并从那里传递。 数据库连接应该在整个应用程序中从头到尾打开。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM