Для одного - сериализуйте ваш JSON
Я заметил, что ваш URL не закодирован (URLEncoded)
fetchData()
async function fetchData() {
console.log("in fetchData");
let page = 0;
var result = [];
var mylen;
var hourAgo = Date.now(Date.now()); // datetime now
hourAgo = hourAgo - 1000 * 60 * 60 * 24 * 30; // subtract 30 days
var myobj = {};
myobj.ts = String(hourAgo); // make unix epoch in ms
url = `http://192.168.1.91:27080/sds/deception/_find?batch_size=100&criteria={ "$and" : [{ "$or" : [{ "reason" : 2 }, { "reason" : 3 }] }, { "ts": { "$gt" : { "$date" : ${myobj.ts}}}}]}`;
console.log("before while");
do {
console.log("in while");
try {
console.log("URL being fetched - NOT ENCODED", url)
let encodedURL = encodeURI(url);
console.log("URL after ENCODING", encodedURL)
const response = await fetch(encodedURL);
const res_json = await response.json();
result = result.concat(res_json.results);
mylen = res_json.results.length;
if (page++ == 0) {
url = `http://192.168.1.91:27080/sds/deception/_more?id=${res_json.id}&batch_size=100`;
console.log(url);
}
console.log("Id: ", res_json.id, "\tLen: ", res_json.results.length);
} catch (err) {
console.log(err, err.message);
}
} while (mylen > 0);
console.log("after while");
//console.log(result);
return result;
}
Это поможет вам при кодировании URLE
https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_encodeuri
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/encodeURI