When I make a "GET" request from the client to the server the server should make a axios.get() call to a stock API to retrieve data for an array of tickers. When I console.log the results it seems to be working fine but the array doesn't seem to save, like it gets wiped out and comes back to the client as empty. I think I might be messing this up with async/await.
async function currentPrice(ticker) {
    const apiURL = `https://www.alphavantage.co/query?function=GLOBAL_QUOTE&symbol=${ticker}&apikey=${API_KEY}`;
    let price;
    await axios.get(apiURL).then(data => {
        try { 
            price = data.data["Global Quote"]["05. price"];
        } catch (error) {
            console.log(error)
        }
    })
    return price;
};
app.get("/refresh", redirectLogin, (req, res) => {
    const {
        user
    } = res.locals;
    var array = [];
    connection.query(`SELECT * FROM holdings WHERE user_name = '${user.user_name}' AND quantity > 0`, (err, results) => {
        if (err) throw err;
        results.forEach(holding => {
            currentPrice(holding.ticker).then(data => {
                var updatedTicker = {
                    ticker: holding.ticker,
                    description: holding.description,
                    price_acquired: holding.price_acquired,
                    market_price: data,
                    delta: parseFloat(this.market_price) - parseFloat(this.price_acquired),
                    quantity: holding.quantity,
                    trade_date: holding.date_acquired
                }
                array.push(updatedTicker);
                // console.log(array);
                console.log(updatedTicker.market_price)
            })
        })
        res.json(array)
    })
})
 
     
    