In this case I created a recursive promise function that is used to call different api urls. How do make the switch-case option in this code not too long?
let listUrl: Array<string> = ['URL-1', 'URL-2', 'URL-3', 'URL-n']
const rpcCall = async (baseURL: string) => {
switch (baseURL) {
    case 'URL-1':
        return new Promise((_resolve, reject) => fetch(baseURL)
            .then(resolve => resolve.status !== 200 || 201 ? Promise.reject() : resolve)
            .catch(reject)
        );
    case 'URL-2':
        return new Promise((_resolve, reject) => fetch(baseURL)
            .then(resolve => resolve.status !== 200 || 201 ? Promise.reject() : resolve)
            .catch(reject)
        );
    case 'URL-3':
        return new Promise((_resolve, reject) => fetch(baseURL)
            .then(resolve => resolve.status !== 200 || 201 ? Promise.reject() : resolve)
            .catch(reject)
        );
    case 'URL-n':
        return new Promise((_resolve, reject) => fetch(baseURL)
            .then(resolve => resolve.status !== 200 || 201 ? Promise.reject() : resolve)
            .catch(reject)
        );
    default:
        return Promise.reject();
  }
 }
const checkToken = async (index = 0): Promise<string> => {
new Promise((res, rej) =>
    rpcCall(listUrl[index])
        .then(res)
        .catch((reject) => {
            if (index < baseUrl.length && reject) {
                return checkToken(index + 1)
                    .then(res)
                    .catch(rej);
            } else {
                rej();
            }
        })
);
return listUrl[index]
}
I mean the best practice method for the options
 
    