我有一个相当标准的MEAN项目设置与角度满堆发电机使用yeoman.
我发现,当获得一个较大的(超过65536个字节)的json结果时,它使用gzip和chunked进行编码,但是返回的json无效,因为它包含两个答复!
例如{name:’hi’} {name:’hi’},用于数组的单个ID或[{..},{..}] [{..},{..}].
服务器api端点是从角度完整堆栈生成器自动生成的,如下所示:
// Get list of worlds exports.index = function(req,res) { World.find(function (err,worlds) { if(err) { return handleError(res,err); } res.json(200,worlds); }); };
如果我切割数据,所以它不会被分块,那么json是很好的形成.我已经检查了mongo数据库,数据也可以在那里调试世界变量,我可以JSON.stringify并获得预期的字符串结果没有任何重复.但是在发送的那一刻,我正在收到json结果的反应.
更新评论
angle-fullstack 2.0.4
模式如下所示:
'use strict'; var mongoose = require('mongoose'),Schema = mongoose.Schema; var WorldSchema = new Schema({ name: String,info: String,active: Boolean,tiles: [Schema.Types.Mixed] }); module.exports = mongoose.model('World',WorldSchema);
种子:
var newWorld = new WorldModel({ _id: planet._objectId,name: "SimDD World",tiles : seed() }); newWorld.save(); ... var seed = function () { var data = []; for (var i = 0; i < planet.HEIGHT; i++) { for (var j = 0; j < planet.WIDTH; j++) { data.push({ coords:{ x:i,y:j },type:'.' }); } } return data; }