Если вы устанавливаете переменные в предложениях if или else, они должны быть переменными, а не const
s. И они должны быть объявлены вне условий if / else.
let foo
if (a) foo = 'a'
else foo = 'b'
Возможность для вашего приложения может использовать классы URL узла .
const targetUrl = new URL('https://externalapi.com/api')
targetUrl.searchParams.append('apikey', '<<SECRET API KEY>>') //SECURITY PROBLEM!
if (a) targetUrl.searchParams.append('objecttype', 'a')
else targetUrl.searchParams.append('objecttype', 'b')
You можно использовать свойство .searchParams
класса URL
для сборки вашего запроса.
Совет по безопасности : вам, вероятно, следует использовать POST, а не GET для вызова этого API, и поместите ваши чувствительные параметры (например, ваш секретный ключ API) в параметры POST. Параметры URL-адресов хранятся в журналах веб-сервера. Они могут храниться в журналах прокси-сервера, которые не контролируются вами или поставщиком вашего внешнего API. Объяснение того, как сделать рефакторинг вашего кода, выходит за рамки этого SO-ответа.