我正在使用mongooseformongodb并嘗試洗掉記錄。標準 REST API 應204在洗掉回應中回傳。然而貓鼬正在回歸200
return await ppc.deleteOne({ _id: id });
隨著反應有 deletedCount
data:
deletedCount: 1
status: 200
或使用
return await ppc.findOneAndRemove({ _id: id});
回傳200與body. 是否有任何默認delete回傳204的API ?
像 inspring boot或spring data rest它204默認回傳成功的洗掉請求。我明白如果我需要正文作為回應,我需要發送200適當的 REST API 約定。但是,如果我需要204用 mongoose、mongo db回傳我自己,我需要先檢查已洗掉的計數,我可以在后端或前端執行此操作,這是一些額外的作業。我想確保是否有某些設定或其他 API 將其默認為204?
問題與200狀態代碼是mongoose即使回報200的ID不存在。
uj5u.com熱心網友回復:
您應該將 Mongodb 作為資料庫的功能與您的應用程式回傳的 HTTP 回應代碼分開,兩者之間沒有關系。
200是回傳的默認“成功”回應代碼,因為您的應用程式成功執行代碼且沒有錯誤。mongoose或者mongodb不是回傳狀態的人。
聽起來您想要做的是將一些基本邏輯納入您的路線,如下所示:
const delResult = await ppc.deleteOne({ _id: id });
response.json({statusCode: 402, ...delResult})
隨著mongoose你也可以預生成觸發某些操作后,執行來處理這種型別的自定義邏輯的你,這就是你如何避免在您的應用程式代碼的重復。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/335676.html
