目前在我的網路服務器上構建一個帶有 express 的 RESTful API,以及一些路由,如使用 mongoose ex 的檔案的洗掉路由。await Note.findByIdAndRemove(request.params.id) response.status(204).end()發送回應狀態end()
為什么我需要添加.end()?在這些情況下是什么,為什么不能發送response.status(204)
有一些回傳 json 的回應,response.status(201).json作業正常
uj5u.com熱心網友回復:
只有某些帶有 Express 或 http 介面的方法才會發送回應。某些方法,例如.status()or.append()或.cookie()僅設定實際發送回應時將使用的傳出回應的狀態 - 它們實際上并不發送回應本身。因此,在使用這些方法時,您必須使用一些實際發送回應的方法來跟蹤它們,例如.end().
在您的具體示例中:
response.status(204)
您可以使用實際發送回應的 Express 版本:
response.sendStatus(204)
如果您選擇使用.status(),那么從 Express 檔案中,您必須使用其他導致發送回應的方法來遵循它。以下是Express 檔案中的示例.status():
res.status(403).end()
res.status(400).send('Bad Request')
res.status(404).sendFile('/absolute/path/to/404.png')
由于所有這三種其他方法都會導致發送回應,并且當回應消失時,它將獲取先前設定的狀態。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/498068.html
上一篇:在CSS影片期間防止影像翻轉
