代码之家  ›  专栏  ›  技术社区  ›  Asaf Aviv

无法从get请求获取对象

  •  -1
  • Asaf Aviv  · 技术社区  · 7 年前

    我可以控制台日志 userData.name userData.summonerLevel 很好,但为什么我不能 return userData 作为一个对象?

    我试图将返回的对象分配给一个变量,但我真的不明白为什么它不起作用。

    function getStats() {
        https.get(https://euw1.api.riotgames.com/lol/summoner/v3/summoners/by-name/yojimbozx?api_key=${API_KEY}, 
        (res) => {
            let userData = ''
    
            res.on('data', (chunk) => {
                userData += chunk
            })
    
            res.on('end', () => {
                userData = JSON.parse(userData)
                if(!userData.hasOwnProperty('status')) {
                    console.log(userData.name, userData.summonerLevel)
                    return userData
                }
                return console.log("Summoner not found")
            })
        }).on("error", (err) => {
            return console.log("Error: " + err.message)
        })
    }
    
    1 回复  |  直到 7 年前
        1
  •  0
  •   Laurens Mäkel    7 年前

    可以,但由于您正在执行一些异步操作,因此应该让函数getStats()返回http调用,它应该可以工作。当前,您正在返回调用函数的结果,但函数没有返回任何内容