Что ж, есть несколько способов сделать это, один из них - использовать модуль запроса-обещания, который является расширенным модулем запроса только в качестве обещания, поэтому мы можем использовать ожидание, пока обещание завершит сбор данных запроса.
запрос-обещание
Изменить модуль request
на request-promise
This
var request = require("request");
для этого
var request = require('request-promise')
Результат:
Добавьте асинхронный запрос, чтобы можно было ожидать всех обещаний.Я создал запрос for для 5 get, изменив значение цепочки с 1 на 5, получив данные в формате json и добавив их в список.Запоминанием конечного результата является список объектов, которые могут быть отображены или доступны с помощью данных [0], данных [1], данных [2] ... данных [4].
var express = require("express");
var app = express();
var bodyParser = require("body-parser");
var request = require('request-promise')
var path = require('path');
app.use(bodyParser.urlencoded({extended:true}));
app.set('views', path.join(__dirname, 'views'))
app.set('view engine', 'ejs')
app.get("/", function(req, res){
res.render("home");
});
app.get("/results", async function(req, res){
const data = [];
for(let chain=1; chain<6; chain++){
let val = await request({
method: 'get',
uri: `https://testardor.jelurida.com/nxt?requestType=getBalance&chain=${chain}&account=ARDOR-9P55-NZTA-ME3E-DBZE4`,
json: true
})
data.push(val);
}
//res.send(data)
res.render('resultsAccountId',{data})
});
app.listen(process.env.PORT, process.env.IP, function(){
console.log("Blockchain Explorer has started!");
});
данных [0]
{ unconfirmedBalanceNQT: '771177340000',
balanceNQT: '771177340000',
requestProcessingTime: 0
}