안녕하세요
MERN 공부중인데, DB에 insert 할 시에 런타임 에러가 계속 떠서 알아본 결과 DB close하는 부분에서 너무 빨리 닫힌다는걸 알아냈고, setTimeout으로 클로즈 시간을 좀 늦췄습니다. 그 이후 정상 작동 되는데, 이 방법이 원래 맞는방법은 아닌것 같아서 질문드립니다.
MongoDB guide, 다른 예제들을 전부 봐도 setTimeout으로 클로즈 시간을 늦추는 경우는 못찾겠어서 질문드립니다.
const { MongoClient } = require("mongodb");
const url =
"mongodb+srv://USERNAME:PASSWORD@cluster0.feify.mongodb.net/products_test?retryWrites=true&w=majority";
const createProduct = async (req, res, next) => {
const newProduct = {
name: req.body.name,
price: req.body.price,
};
const client = new MongoClient(url);
try {
await client.connect();
const db = client.db();
const result = db.collection("products").insertOne(newProduct);
} catch (error) {
return res.json({ message: "Could not store data." });
}
setTimeout(() => {
client.close();
}, 1500);
res.json(newProduct);
};
const getProducts = async (req, res, next) => {};
exports.createProduct = createProduct;
exports.getProducts = getProducts;