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();
})
}
Success URL пусть пишет в базу айдишник юзера и оплачено: true, и при входе на нужную страницу пусть это проверяется, и если нет такого, то редирект?
Promise.all(promis1, promis2) // разрешится когда сработает каждый из промисов
.then(datas=>{
// здесь можно получить данные, преобразовать и записать в db
});
sql_connect.query("select COUNT(1) FROM chat_msg WHERE id != 0;", function(err,res) {
let sql_size, str, str1;
if (err) console.log(err);
str = JSON.stringify(res);
str1 = JSON.parse(str);
sql_size = str1[0]["COUNT(1)"];
console.log(sql_size);
// поместите цикл внутрь callback
for (let i = 2; i < sql_size+2; i++) {
sql.connect.query("SELECT msg_text FROM chat_msg where id = " + i + ";", funvtion(...){ /* здесь опять будет async*/ });
}
});
router('/user', (req, res, next) =>{
const {userId} = req.session; // здесь могу ошибаться посмотрите док password...
User.findById(userId) // model User в mongoose
.then(user=>{
const viewModel ={
user, //user для этой сессии
... // что то еще нужное
};
res.render('view-user', viewModel)
})
.catch(err=>next(err);
}
findOne
возвращает промисfunction filterMenu(menus,login){
const user = ['Заявка на редактирование сайта'];
var men = [];
return models.user.user.findOne({where: {login: login}})
.then(us=>{
if(us.privilege === 1){ // строгое сравнение ===
return menus.filter(n => user.includes(n.name));
}else{
return menus;
}
})
}
...
let q;
filterMenu(menus,request.session.login);
.then(result=> q==result)
where
здесь лишнееmodels.user.user.findOne({login: login})
app.get('/', (req, res, next) => {
sendHttpRequest(num1, num2)
.then(data => anyFetch1(url))
.then(data => anyFetch2(url))
....
.then(data => res.json(data)) // ответ клиенту
.catch(err => next(err)) // ошибка
.then
}))
sendHttpRequest
и каждый anyFetch
- должен возвращать промис.return await fetch(id, param) // return !!!
.then((response: any) => response.json())
.then(data => {
return checkFiles(id, data); // return надо ставить
})