Я новичок в JavaScript/Node.js, и я пытаюсь изучить асинхронные вызовы и обратные вызовы.Загрузите модуль JavaScript, сохраните результат функции на переменной, а затем консольный журнал
Я написал следующий код (steamid64.js):
var rp = require('request-promise');
var parseString = require('xml2js').parseString;
var username = 'yllanos';
function getSteamID64(URL) {
rp(URL)
.then(function (xml) {
parseString(xml, { explicitArray : false, ignoreAttrs : true, trim : true }, function(err, result){
json = result;
});
console.log(json["profile"]["steamID64"]);
})
.catch(function (reason) {
console.error("%s; %s", reason.error.message, reason.options.url);
console.log("%j", reason.response.statusCode);
return reason.error.message;
});
}
exports.get = getSteamID64;
getSteamID64("http://steamcommunity.com/id/" + username + "/?xml=1");
Код модуля идет в Steam, выхватывает XML для этого пользователя, преобразует его в формат JSON и только с помощью customURL, я могу Console- войдите в SteamID64.
Но я не хочу, чтобы консоль регистрировал результат из моего модуля. Теперь я хочу, чтобы код был выше из другого скрипта (test.js), сохранил результат в переменной и затем сделал что-то еще. Например, я могу выполнить консольный журнал из этого внешнего скрипта (test.js).
Так что, пожалуйста, как это сделать? Я подозреваю, что мне нужно каким-то образом экспортировать ценность JSON, которая меня интересует?
Я решил использовать это предложение, но с небольшими изменениями. Таким образом, окончательный код выглядит так: –