Я работаю в коде с Promise, чтобы получить значения JSON, код работает, но вывод всегда возвращается между словами Promise {}.
const info = new Promise((resolve, reject) => {
var req = require('request');
var options = {
url: 'https://api.info.com/',
headers: {
'User-Agent': 'request'
}
};
req(options, function (err, response, body) {
if (!err && response.statusCode === 200) {
resolve(JSON.parse(body));
}
});
});
console.log(info); //Output: Promise { [ { name: 'Gary'}, { name: 'John'} ] }
Что я делаю не так?
Мне бы хотелось, чтобы мой вывод был только как на сайте:
[ { name: 'Gary'}, { name: 'John'} ]
==> ОБНОВЛЕНИЕ
Это работает частично:
const info = new Promise((resolve, reject) => {
var req = require('request');
var options = {
url: 'https://api.info.com/',
headers: {
'User-Agent': 'request'
}
};
req(options, function (err, response, body) {
if (!err && response.statusCode === 200) {
resolve(JSON.parse(body));
}
});
});
info.then(function(value) {console.log(value)});//output: [ { name: 'Gary'}, { name: 'John'} ]
но мне нужно использовать результат за пределами , а затем , чтобы выполнить другие операции с запросами, используя этот результат Json, я попробовал что-то подобное:
info.then(function(value) { jsonfile = value });
console.log(jsonfile);//Output: jsonfile is not defined