Node.js中使用process.env修改JSON对象值的问题求助
问题:Node.js中无法动态修改响应JSON对象实现文本大写转换
我最近在学习Node.js,想根据环境变量MESSAGE_STYLE的参数来调整/json接口的返回响应:当MESSAGE_STYLE设置为uppercase时,把返回JSON里唯一键message的值转为大写。但折腾了半天都没成功,toUpperCase()方法完全没起作用,后来还试了JSON.parse和JSON.stringify(可能我操作方式不对),还是不行。
下面是我写的两段代码:
无法正常工作的代码
process.env.MESSAGE_STYLE='uppercase'; app.get('/json', function(req, res){ var response = res.json({ "message": "Hello json" }); if(process.env.MESSAGE_STYLE==='uppercase'){ response.message.toUpperCase(); return response; } else { return response; }; });
可以正常工作的代码
process.env.MESSAGE_STYLE='uppercase'; app.get('/json', function(req, res){ if(process.env.MESSAGE_STYLE==='uppercase'){ res.json({ "message": "HELLO JSON" }) } else { res.json({ "message": "Hello json" }) }; });
我想知道为什么第一段代码没法实现预期效果?有没有办法可以先构建好基础响应对象,再根据环境变量动态修改它之后再返回呢?恳请各位大佬帮忙解答!
内容的提问来源于stack exchange,提问作者daritimm
相关产品推荐
相关产品推荐

