如何基于 mongo 查询中止冗长的 nodejs 函数

How to abort a lengthy nodejs function based on mongo query?

本文关键字:nodejs 函数 何基于 mongo 查询      更新时间:2023-09-26

基本架构是:

    我的
  1. 客户端向我的node发送AJAX请求
  2. 我的nodemongo中输入请求,设置状态"进程"并启动一个冗长的函数
  3. 当函数返回时,它会将请求的状态更新为"已完成"mongo
  4. 我的node在与客户端验证后会向客户端发送回响应mongo

现在假设客户端在处理上一个请求时向我的node发送另一个请求,说要中止上一个请求。我的node会立即将mongo中上一个请求的状态更新为"中止"。

现在,我该如何node退出该功能?

我可以做的一件事是在我的函数中进行一些检查,以检查状态是否已更新为"中止",如果是,则返回。

我的mongo检查必须是同步的,我能想到的唯一方法是将callback s放在callback s中,依此类推。我的函数已经有几个callback,再添加一些会让它更加难以管理。

谁能建议我更好的方法?

您可能想看看我的类似问题 - 目前我正在为每个客户端创建单独的数据库连接,并简单地关闭它们以响应早期断开连接,但可能有更好的方法做到这一点,我们将看到 (: