Я пытаюсь вызвать URL API отдыха в одном методе, а затем использовать этот ответ для формирования следующего запроса к другому URL, скажем, git для запроса некоторой информации.
Я видел множество примеров, прежде чем опубликовать это, в каждом люди просто распечатывают ответ на консоль или устанавливают его в ответ сервера.
Я пытался использовать async / await, но это просто замедляет процесс. Поэтому я не очень заинтересован в использовании этого подхода.
Я выполняю обратные вызовы, но я не могу собрать данные, чтобы фактически зациклить их.
Вот мой фрагмент кода: -
function initialize(path) {
// Setting URL and headers for request
var options = {
url: '',
headers: {
'Accept': '*/*',
'User-Agent' : 'something something',
'Authorization': 'Basic ' + new Buffer(process.env.username + ':' + process.env.password).toString('base64')
},
method: 'GET',
port:443
};
options.url = path;
callback = function(err,response){
var str= "";
response.on('data',function(chunk){
str+=chunk;
});
response.on('end',function(){
return JSON.parse(str);
});
}
http.request(options, callback).end();
}
И я вызываю это из этого метода.
function collectData1(userid){
var url = "example.com/users/user1";
var results = initialize(url);
console.log(results);
return results;
}
Но результаты всегда остаются неопределенными.
Итак, как мне это сделать? Есть предложения?