Я вызываю 2 запроса API 1 за другим, поэтому я решил использовать модель водопада, но я столкнулся с проблемой в ней
Я так много пытался, но не смог решить проблему.
Ниже мой код:
var unirest = require("unirest");
var async = require("async")
exports.user = (req, res, next) => {
const qry = req.params.id
async.waterfall([
(nextCall) => {
var req = unirest("GET", API_URL1);
req.query({
// some query
});
req.headers({
// some headers
});
req.end(function(subCount) {
// if (resp.error) throw new Error(resp.error);
var channelSubCount = subCount.body
nextCall(null, data)
});
},
(data, nextCall => {
console.log(channelSubCount, 'data')
var reqs = unirest("GET", API_URL2);
reqs.query({
// some query
});
reqs.headers({
// some headers
});
reqs.end(function(res) {
// if (res.error) throw new Error(res.error);
console.log(res.body);
return nextCall(null, {
name: 'abc',
photo: 'src',
count: data
})
});
})
], function(finalData) {
// if (error) { alert('Something is wrong!'); }
console.log('final')
res.status(200).json(
finalData
);
});
};
ОШИБКА:
Ошибка ссылки: данные не определены
Я не понимаю, почему это происходит.
Также некоторые, пожалуйста, покажите мне правильный способ реализации вышеуказанных вещей с оптимизацией.
Любая помощь приветствуется ...