I'm having a bit of an issue with an error dealing with promises. So initially I had my function set up like this, and it all worked fine, no problems.
Original:
const request = require("request-promise");
async () => {
const URL_HIDDEN = "...";
let info = await request(URL_HIDDEN);
info = JSON.parse(info).response.players[0];
let playtime = await request(URL_HIDDEN);
playtime = JSON.parse(playtime).response.games;
console.log(info);
console.log(playtime);
}
This is a shortened version, but basically I am just requesting information from the Steam API. Both the variables get print out with all the data no problem, but that changes once I do the refactor below.
Refactored:
const middleware = require("../middleware");
async () => {
const URL_HIDDEN = "...";
let requests = middleware.requestURI(URL_HIDDEN);
console.log(requests);
}
and I started doing all the request handling in a separate function in a separate file.
const request = require("request-promise");
middlewareObj.requestURI = async (URL_HIDDEN) => {
console.log("1");
let info = await request(URL_HIDDEN);
info = JSON.parse(info).response.players[0];
console.log("2");
let playtime = await request(URL_HIDDEN);
playtime = JSON.parse(playtime).response.games;
console.log("3");
return [{ info }, { playtime }];
};
Once I got all the variables sorted out I want to return an array. However, once executed I get this printed to the console.
1
Promise { <pending> }
2
3
Any idea why it's printing promise pending once I refactored it?
In the original it prints out everything perfectly fine