扩展express res.json函数

Extend express res.json function

本文关键字:函数 json res express 扩展      更新时间:2023-09-26

我想知道如何扩展res.json函数。我想让它在执行正常任务之前做一些字符串替换。

我的想法是用它来翻译

{
value:'some key'
}

结果是

{ 
value:'translated text'
}

你知道怎么做吗?

您可以定义一个中间件,将res.json()替换为您自己的函数:

app.use((req, res, next) => {
  let json = res.json.bind(res);
  res.json = (data) => {
    let newData = ...perform replacements here...
    return json(newData); // call the original `res.json()`, stored as `json`
  };
  next();
});