将离线转化数据上传到Facebook的API时,每个API调用限制为2,000个事件。
为了上传超过2000个事件的JSON对象,需要将它们分成较小的对象并一次POST一个。
如何实现这一目标?
感谢。
答案 0 :(得分:0)
根据docs,您可以通过构建JSON对象来描述您要执行的每个操作,从而发出批处理请求。您可以在一个批处理请求中执行多达50个操作,但每个操作都计为一次调用。例如。单个批处理请求中的50个操作计为50个针对您的配额的请求。
答案 1 :(得分:0)
谢谢你etemple1的答案。
我尝试在解决方案已经存在时找到解决方法的好例子。
对于任何想要分割json对象的人来说,这就是我使用的方法。
batchSize是每个结果json的大小(除了最后一个在到达数据末尾时切断。
var batchSize = 1900;
var total = jsonObj.length;
for (var j = 0; j <= Math.floor(total/batchSize); j++) {
var data = [];
var batchStart = j*batchSize;
for (var i = batchStart; i < batchStart+batchSize; i++) {
var obj = {};
var index = i;
obj.currency = jsonObj[index].someFieldFoo;
data.push(obj);
if (index + 1 >= jsonObj.length) {
break;
}
// console.log(data);
};
};