You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Express+MongoDB POST接口已更新数据库但无法返回200状态码

解决Express POST请求挂起无法返回200状态码的问题

问题出在你成功保存文档后的响应处理环节:你仅调用了res.status(200)设置状态码,但没有发送实际的响应内容,Express会持续等待你结束响应流程,导致请求一直处于挂起状态。

修改后的代码如下:

exports.site_create = async (req, res) => {
  const site = new Site({
    name: req.body.name,
    location: req.body.location,
    well_type: req.body.well_type,
  })

  try {
    const siteToSave = await site.save()
    // 发送响应以结束请求
    res.status(200).json(siteToSave)
    console.log(siteToSave)  
  }

  catch(error) {
    res.status(400).json({message: error.message})
  }
};

你可以根据需求选择响应内容:既可以返回创建完成的文档(如上述代码用.json(siteToSave)),也可以返回简单的成功提示,比如res.status(200).send('站点创建成功')。只要调用了发送响应的方法,请求就会正常结束并返回200状态码。

内容的提问来源于stack exchange,提问作者user22002675

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 16:12:04