问题描述
我用nodejs写服务器,如果我想把我从数据库里查收的对象返回去直接用res.json(doc),但是如果我想在json中加一个字段message:sucess。表示成功怎么写?就是我想把所有的请求返回的json中都带有message字段这个怎么加?
问题解答
回答1:最省事的方法:
res.json(JSON.stringify({data: doc, message: success}))
但总是这么写会很烦,你会逐步的优化你的写法
function toJSON (data = {}, message = ’’, status = ’’, code = ’’) { return {JSON.stringify({ data, message, status, code }) }}回答2:
res.json支持对象, 直接这么写res.json({data, message: ’success’})就行. 如果用字符串, 最好用res.send, res.end, 要不然res.json还得判断类型.
这样返回的对象就是
{ message: ’success’, data: {} // 原有data.}
建议这么做, 外面包装一层, 你要是直接在data上加message字段, 万一data本身也有message字段, 你不就覆盖了么.