在我的API应用程序中,我对不同部分的错误有一个固定的响应.正如您所看到的那样res.status(400).json({"error": "Invalid input"})
,实际上在不同的文件和模块中重复了很多.
我可以创建模块函数invalidInput(res)
,这将消除重复,但我真的希望这是res
对象的全局部分,如res.invalidInput()
.
我怎么能在JS/Node.JS中创建它?
router.get("/users", function(req, res) { // ... if (error) { return res.status(400).json({"error": "Invalid input"}); } }); router.get("/items", function(req, res) { // ... if (error) { return res.status(400).json({"error": "Invalid input"}); } }); // etc
saadq.. 17
您可以使用自己的自定义中间件.将此添加到路由处理程序上方的某处:
router.use(function(req, res, next) { res.invalidInput = function() { return res.status(400).json({"error": "Invalid input"}); }; next(); });
然后你可以res.invalidInput()
在路由处理程序中执行.
您可以使用自己的自定义中间件.将此添加到路由处理程序上方的某处:
router.use(function(req, res, next) { res.invalidInput = function() { return res.status(400).json({"error": "Invalid input"}); }; next(); });
然后你可以res.invalidInput()
在路由处理程序中执行.