I am trying to get data from an API. If api call is returning more pages then I am making multiple calls. So, I did something as below. Though, it's printing data but not adding it to Title array. It's just getting the first page data but when I am trying to get more data to make different GET request it's not letting me do it. If anyone know the reason please help.
const axios = require("axios");
let pageNumber = 1;
let title = [];
let valueToSearch = 'love'
let url = `https://jsonmock.hackerrank.com/api/movies/search/?Title=${valueToSearch}`;
let pageURL = `https://jsonmock.hackerrank.com/api/movies/search/?Title=love&page`;
const getMovieName = async url => {
    try{
        const response = await axios.get(url);
        const data = response.data;
        let totalPages = data.total_pages;
        let mainData = data.data;
        mainData.forEach(element => {
            let movieName = element.Title;
            title.push(movieName);
        });
        for(var i=2; i <= totalPages; i++){
            let newUrl = `${pageURL}=${i}`;
            const getMovieNameInner = async url => {
                console.log(url);
                try{
                    const response = await axios.get(newUrl);
                    const data = response.data;
                    let mainData = data.data;
                    let perPage = data.per_page;
                    mainData.forEach(element => {
                        let movieName = element.Title;
                        console.log(`printing inside ${movieName}`);
                        title.push(movieName);
                    });
                }catch (error) {
                    console.log(error);
                }
            }
            getMovieNameInner(newUrl);
            console.log(title.length);
        }
        console.log(title);
    }catch (error) {
        console.log(error);
    }
}
getMovieName(url);
 
    