我看到mongoose池在插入数据之前似乎已关闭,因为在我的云集群中调用mongoose数据库时出现此错误
MongoRuntimeError: Connection pool closed
但是我一直在等待所有的电话,所以我不确定为什么会出现这个问题,也许这与我定义客户的方式有关?希望有人对此有一些提示或想法
export const storeData = async (data) =>{
const uri = `mongodb+srv://plantmaster:${password}@cluster0.yey8l.mongodb.net/plantstore?retryWrites=true&w=majority`;
const client = await MongoClient.connect(uri, {
useNewUrlParser: true,
useUnifiedTopology: true,
serverApi: ServerApiVersion.v1
});
const newPLantData = { name: "Company Inc", address: "Highway 37" };
await client.db("plantstore").collection("plantdata").insertOne(newPLantData, (err, res) =>{
if(err) throw err;
console.log(result)
})
await client.close();
};
我在这样的快速邮递路线上调用此函数
// store data
app.post('/store', async function (req, res) {
await storeData(req.body);
res.send('data was stored')
})
2条答案
按热度按时间ijnw1ujt1#
我也遇到了同样的错误,但我在关闭连接之前等待了1500ms来修复它。
b1zrtrql2#
尝试以下示例方法