【发布时间】:2021-12-27 06:38:37
【问题描述】:
直截了当:
我在 1 秒内从同一台机器(用户)或不同机器(用户)单击按钮两次。它正在创建两个文档(重复)。
简而言之可能是如何并行或同时处理多个 API 调用。
我的怀疑:
- Nodejs 收集 API 调用 ->
db.find(name)-> 未找到 -> 创建新文档(正在运行)
在上述文档创建完成之前。 Nodejs 开始执行下一个 API 调用。
- Nodejs 收集 API 调用 ->
db.find(name)-> 未找到 -> 创建新文档。
示例代码:这里创建了两个同名帐户。
const userPresent = await User.findOne({
phoneNumber: data.phoneNumber,
});
if (userPresent) {
throw new CustomError("OIC_ERROR_00027", "User already present");
}
// new account created
const newAccount = await new Account({
name: data.name,
}).save();
【问题讨论】:
标签: node.js mongodb express asynchronous duplicates