簡體   English   中英

如何在Node.JS中向自定義函數添加響應對象

[英]How to add custom function to response object in Node.JS

在我的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

您可以使用自己的自定義中間件。 將此添加到路由處理程序上方的某處:

router.use(function(req, res, next) {
    res.invalidInput = function() {
        return res.status(400).json({"error": "Invalid input"});
    };
    next();
});

然后你可以在路由處理程序中執行res.invalidInput()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM