JavaScript https 获取请求

时间:2021-01-18 19:34:57

标签: javascript node.js https get

使用此代码发送到地址 https://api.steampowered.com/ISteamApps/GetAppList/v2/?format=json 的获取请求时间过长:

https.get("https://api.steampowered.com/ISteamApps/GetAppList/v2/?format=json", (res) => 
    {
        res.setEncoding("utf8");
        let bodyCount = "";
        res.on("data", (dataCount) => {
        bodyCount += dataCount;
        });
        res.on("end", () => {
        bodyCount = JSON.parse(bodyCount);
        console.log(bodyCount);
        });
});

这个过程需要几秒钟,那么如何让它更快地发生?

1 个答案:

答案 0 :(得分:0)

如果有人想知道我是如何解决这个问题的:

setInterval(() =>{
    https.get("https://api.steampowered.com/ISteamApps/GetAppList/v2/?format=json", (res) => {
        res.setEncoding("utf8");
        let body ="";
        res.on("data", (dataCount) => {
            body += dataCount;
        });
        res.on("end", () =>{
           fs.writeFile('./steamdatabase.txt', body, (err) => {
  if (err) {
    console.error(err)
    return
  }
        });
});
});
}, 86400000);

...

 fs.readFile('./steamdatabase.txt', (err, data) => {
                    if (err) {
                       console.error(err)
                       return
                    }

            let body = JSON.parse(data);
            for(let i = 0;i<body.applist.apps.length;i++){
                if(body.applist.apps[i].name == generateParameter(args)) appidGame = body.applist.apps[i].appid;
                }
            if(appidGame) appInfo(appidGame,mess);
            });