【发布时间】:2020-04-26 15:16:49
【问题描述】:
我正在创建一个 restAPI,但我没有让 express.Router () 删除方法工作
我正在寻找答案,但我找到的所有答案都与我所做的一致。
只有delete方法不行,其他都可以。
路线文件:
const express = require('express')
const CustumerController = require('../controllers/CustumerController')
const router = express.Router()
router.get('/customers', CustumerController.index)
router.get('/customers/:id', CustumerController.show)
router.post('/customers', CustumerController.store)
router.delete('/customers/:id', CustumerController.destroy)
module.exports = router
客户控制器.js
async destroy(req, res) {
const { id } = req.params
const result = await CustomerRepository.delete(req)
res.json(result)
}
CustomerRepository.js
async destroy(id) {
const clause = {
where: { id }
}
try {
return await Customers.destroy(clause)
} catch (err) {
return {
statusCode: status.INTERNAL_SERVER_ERROR,
message: status.classes['5XX_MESSAGE'],
error: err
}
}
}
删除错误示例:
成功的例子,在get
我试过,在控制器上,用一个简单的对象来触发 res.json(),只是为了测试,但是没用,请求还不够。
问题好像真的出在express.Router的delete方法上
谢谢你的帮助
【问题讨论】:
-
嗨@Henrique,请查看how to ask(请勿发布代码图片)。另外,您可以添加minimal reproducible example 来说明您遇到的问题吗?
-
提供
destroy函数体。 -
嗨@mgarcia,感谢您的提示,我已经更新了我的问题。
-
@Saeed,我把destroy函数放在了问题中