let xhr = new XMLHttpRequest();
// Отсчёт тайм-аута вынести из обработчика
let xhrTimeout = setTimeout(function() {
xhr.abort()
alert('Истек тайм-аут ожидания ответа сервера.');
}, 5000);
xhr.onreadystatechange = function() {
// выключить тайм-аут
clearTimeout(xhrTimeout);
// При неуспешном ответе - завершаем процесс запроса.
if (xhr.readyState != 4) {
return;
}
if (xhr.status === 200) {
_функционал при успешном ответе сервера_
return;
} else {
_функционал при неуспешном ответе сервера_
return;
}
}
....
fs.readFile(path[, options], callback)
fs.readFileSync(path[, options])
const promises = [];
for (let i = 0; i < counter.count; i += 100) {
promises.push(vk.api.wall
.get({
owner_id: resource.id,
count: 100, // Больше 100 получить нельзя.
})
})
}
Promise.all(promises)
.then(res => res.flat())
.then (res =>{
//res === пачки постов.
// здесь можно что то сделать с постами
})
API социальной сети ВКонтакте разрешает одним запросом получить только 100 постов, что меня не устраивает.
const readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
const lastPageLink = await this.driver.findElement(By.css('.pager-last a'))
let count_pages = +lastPageLink.getText()
if (count_pages !== count_pages) {
rl.question('Не нашли количество страниц. Установите вручную ', (value) => {
console.log(value);
// ---------- begin code ----
// поместите сюда весь код который использует введенное кол-во страниц
// ----------- end code ----
rl.close();
})
}