神奇:之前写好的许多接口返回了一些无关的数据
untitled1.png 红线之前是正常内容,之后是数据库里其他内容,本接口根本没有指定返回这些
25 回复
res.render("channelHomepage",utils.combineJson(errors.e0,channel[0])); 最终解决方式:上面的errors.e0和channel[0]如果互换了位置就会出现之前的bug。combineJson是我写的一个拼接json的工具方法。虽然没有找到根本原因,但我觉得这应该算mongoose或者mongodb的一个bug。因为上面的代码执行过一次后,其返回的内容会被加入到所有其他接口返回的结果中
@zbinlin exports.combineJson = function (origin, target) { for (var p in origin) { target[p] = origin[p]; } return target; };
你用 这个试试 function (origin, target) { var result = {}; for (var p in origin) { result[p] = origin[p]; } for (var p in target) { result[p] = target[p]; } return result; };