Как вывести переменные из функции Node.JS

Поддержка
  • var SteamCommunity = require('steamcommunity');
    var SteamTotp = require('steam-totp');
    var code = SteamTotp.generateAuthCode('');
    console.log(code);
    var client = new SteamCommunity();
    client.login({
    "accountName": "",
    "password": "",
    "twoFactorCode": code
    },(err, sessionID, cookies, steamguard, oAuthToken)=>{
        console.log(sessionID);
        console.log(oAuthToken);
        console.log(cookies);
    })
    

    Почему console.log не выводит в лог баса, а выводит только в лог ноды? Также не могу присвоить переменные [[SESSIONID]]=sessionID; не работает, как вытащить значения из функции?

  • @WildBee потому что у вас калбек, перепишите на промисы

  • @UserTrue

    var SteamCommunity = require('steamcommunity');
    var SteamTotp = require('steam-totp');
    var code = SteamTotp.generateAuthCode('');
    console.log(code);
    var client = new SteamCommunity();
    
    var accountName=[[STEAM_LOGIN]];
    var password=[[STEAM_PASSWORD]];
    
    var promise = new Promise((resolve)=>{
        client.login({
        "accountName": accountName,
        "password": password,
        "twoFactorCode": code
        },(err, sessionID, cookies, steamguard, oAuthToken)=>resolve(sessionID))});
    
    promise
      .then(
        result => {
          console.log(result);
        }
      );
    

    Что не так? Все-равно выводится в лог ноды

  • @WildBee забыл написать, что промис + await. Проблема в асинхронности.

  • @UserTrue Получилось! Спасибо!

  • 0 Votes
    5 Posts
    561 Views
  • 1 Votes
    6 Posts
    672 Views
  • 0 Votes
    3 Posts
    619 Views
  • 0 Votes
    2 Posts
    627 Views
  • 0 Votes
    5 Posts
    753 Views