node.js - MongooseError:操作 `products.insertOne()` 缓冲在 10000 毫秒后超时
问题描述
我正在使用有关使用 MongoDB 和猫鼬的 API 的 Youtube 教程。但是,每当我在 Postman 上发布某些内容时,我都会不断收到此错误。“MongooseError:操作products.insertOne()
缓冲在 10000 毫秒后超时”
const { MongoClient } = require('mongodb');
const uri = "mongodb+srv://dusdn1102:" + process.env.MONGO_PW + "@node-rest-shop.wvxmj.mongodb.net/myFirstDatabase?retryWrites=true&w=majority";
const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true });
client.connect(err => {
const collection = client.db("test").collection("devices");
client.close();
});
我使用的是 Visual Studio 代码 1.57.1,MongoDB 的版本是 4.4.10。请问有人可以帮我吗??
解决方案
您需要使用 mongoose 创建与 MongoDB 的连接。首先将以下代码添加到您的 app.js 或 server.js。
const mongoose = require("mongoose");
const uri = "mongodb+srv://dusdn1102:" + process.env.MONGO_PW + "@node-rest-shop.wvxmj.mongodb.net/myFirstDatabase?retryWrites=true&w=majority";
mongoose.connect(uri, {
useNewUrlParser: true,
useUnifiedTopology: true,
});
const db = mongoose.connection;
db.on("error", console.error.bind(console, "connection error: "));
db.once("open", function () {
console.log("Connected successfully");
});
使用它打开一个连接,然后继续进行插入操作。
推荐阅读
- postgresql - 为什么 Spring Data 不支持返回实体来修改查询?
- c - 指针数组 - 在更改先前保存的内容值的同一位置创建临时数组
- ios - 使用 puckettunnel 提供程序 (nsextensionprincipalclass) 的实现创建 SDK
- php - 在模型 [App\Team] laravel 6 上调用未定义的关系 [users]
- qt - Qt/QML:如何在 QML 中双向同步 ScrollView?
- shopify - 修改 Shopify 搜索 - 显示产品变体,正确分页
- javascript - 如何为我的选择元素和按钮重构事件侦听器?
- python - 为什么我有来自 Openweathermap JSON 和 PyOWM 库的不同 api 响应?
- yaml - 如何在 yaml 文件中找到错误?
- android - 没有找到类“android.view.View?