获取删除请求无法正常工作

时间:2018-05-08 13:07:11

标签: javascript node.js ajax express fetch

使用Fetch API,我发送以下请求:

const target = e.currentTarget;
fetch(target.href, {
  method: 'delete',
})
.then(res => console.log(22))
.catch(err => console.log(err));

此外,这是处理此请求的中间件:

exports.deleteImageById = async (req, res) => {
 const image_id = req.params.image_id;
  const imagePromise = Image.findByIdAndRemove(image_id);
  const commentPromise = Comment.remove( {image_id} );
  await Promise.all([imagePromise, commentPromise])
    .catch(err => console.log(err));
  req.flash('Image Deleted!');
  // return something well!
  res.status(200);
};

正在删除文档,但fetch语句中的then块不起作用。它不会向控制台输出任何内容。

我在这里做错了吗?

2 个答案:

答案 0 :(得分:1)

未收到回复,因此不会调用then。在服务器更改

res.status(200);

包括end(),因为status不发送回复

res.status(200).end();

sendStatus

res.sendStatus(200);

答案 1 :(得分:1)

res.status仅用于设置不发送响应的状态代码。

而是使用以下内容:

res.sendStatus(200)