0
具有10000个数据的表并使用查询(jql)从表中获取特定的数据。提取的计数是正确的,它是673,但打开那些数据时它只发送100个数据。 这是我的代码:JS parase数据从近8000个表中发送JSON格式的100个数据
request({
/////////////////////////////////////
//query to get current open tickets//
/////////////////////////////////////
url: '/rest/api/2/search?jql=project=OWRT AND status in (Open, "In Progress", Reopened)&startAt=0&maxResults=-1',
success: function(response) {
var owrt = $.parseJSON(response);
var liktot = parsedata(response,'owrt');
console.log("OWRT max"+owrt.maxResults);
request({
////////////////////////////////////////////////////
//query to get current resolved and closed tickets//
////////////////////////////////////////////////////
url: '/rest/api/2/search?jql=project=OWRT AND status not in (Open, "In Progress", Reopened)',
success: function(response1) {
var fixowrt = $.parseJSON(response1);
var owrt_tot=owrt.total;
request({
//////////////////////////////////////////
//query to get year 2016 created tickets//
//////////////////////////////////////////
url: '/rest/api/2/search?jql=project = OWRT AND created >= 2016-01-01 AND created <= 2016-12-31',
success: function(response2) {
var cowrt = $.parseJSON(response2);
request({
//////////////////////////////////////////
//query to get year 2017 created tickets//
//////////////////////////////////////////
url: '/rest/api/2/search?jql=project = OWRT AND created >= 2017-01-01 AND created <= 2017-12-31&maxResults=-1',
success: function(response3) {
var cfixowrt = $.parseJSON(response3);
var owrtcre17 = parsedata(response3,'owrt2017');
var cowrt_tot=cowrt.total;
request({
/////////////////////////////////////////
//query to get year 2016 closed tickets//
/////////////////////////////////////////
url: '/rest/api/2/search?jql=project = OWRT AND status = Closed AND updated >= 2016-01-01 AND updated <= 2016-12-31',
success: function(response4) {
var fowrt = $.parseJSON(response4);
request({
/////////////////////////////////////////
//query to get year 2017 closed tickets//
/////////////////////////////////////////
url: '/rest/api/2/search?jql=project = OWRT AND status = Closed AND updated >= 2017-01-01 AND updated <= 2017-12-31',
success: function(response5) {
var ffixowrt = $.parseJSON(response5);
var fowrt_tot=fowrt.total;
request({
////////////////////////////////////////////
//query to get all tickets in this project//
////////////////////////////////////////////
url: '/rest/api/2/search?jql=project=OWRT',
success: function(response6) {
console.log("start1:"+reqcount);
var fullowrt = $.parseJSON(response6);
var fullowrt_tot = fullowrt.total
var obj = {};
obj['key']='OWRT';
obj['tot']=owrt_tot;
obj['totlink']=liktot[0];
obj['ntotlink']=liktot[1];
obj['fixntotlink']=fixowrt.total;
obj['ckey']='OWRT';
obj['ctot']=cowrt_tot;
obj['cre17totlink']=owrtcre17[0];
obj['cre17ntotlink']=owrtcre17[1];
obj['cfixntotlink']=cfixowrt.total;
obj['fkey']='OWRT';
obj['ftot']=fowrt_tot;
obj['ffixntotlink']=ffixowrt.total;
obj['fulltot']=fullowrt.total;
summary.push(obj);
reqcount=reqcount+1;
requestexe();
},
error: function(response) {
console.log("Error loading API (" + uri + ")");
console.log(arguments);
},
data: {"fields":["key"]},
contentType: "application/json"
});
requestexe();
},
error: function(response) {
console.log("Error loading API (" + uri + ")");
console.log(arguments);
},
data: {"fields":["key"]},
contentType: "application/json"
});
requestexe();
},
error: function(response) {
console.log("Error loading API (" + uri + ")");
console.log(arguments);
},
data: {"fields":["key"]},
contentType: "application/json"
});
requestexe();
},
error: function(response) {
console.log("Error loading API (" + uri + ")");
console.log(arguments);
},
data: {"fields":["key","id","status","project","issuetype","issuelinks", "summary", "assignee", "type",'created']},
contentType: "application/json"
});
requestexe();
},
error: function(response) {
console.log("Error loading API (" + uri + ")");
console.log(arguments);
},
data: {"fields":["key"]},
contentType: "application/json"
});
requestexe();
},
error: function(response) {
console.log("Error loading API (" + uri + ")");
console.log(arguments);
},
data: {"fields":["key"]},
contentType: "application/json"
});
requestexe();
},
error: function(response) {
console.log("Error loading API (" + uri + ")");
console.log(arguments);
},
data: {"fields":["key","id","status","project","issuetype","issuelinks", "summary", "assignee", "type",'created']},
contentType: "application/json"
});
当看该查询的总数,这是“owrt_tot”正在发送正确的,但来自其仅发送100,其是fectching数据时包括“liktot [0]” +“ liktot 1“。 the final outcome of data
但总数是673,但数据从上面的代码发送仅100这个总数是高达1000之后几天继续运行代码之前领我到100所以有什么,内存是一个问题还是需要更改代码?
嵌套你的请求不仅是非常容易出错,但它看起来很糟糕。我认为你先分开你的请求,然后检查你的结果。也许你的错误解决了。否则,请随时发布重构版本。检查此https://stackoverflow.com/questions/12101687/nested-requests-are-blocking?answertab=votes#tab-top – Akaino