Как использовать относительные URL-адреса в RedirectUri MSAL?

В моем приложении React, размещенном в Azure как статическое веб-приложение, я использую библиотеку MSAL для аутентификации. Чтобы создать новое приложение Msal.UserAgentApplication, мне нужно передать объект конфигурации, который, в частности, содержит redirectUri. Что-то вроде:

const msalConfig = {
   auth: {
      clientId: "75d84e7a-40bx-f0a2-91b9-0c82d4c556aa", 
      authority: "https://login.microsoftonline.com/common",
      redirectUri: "www.example.org/start",
   },
   ...

Мне интересно: как я могу использовать относительный URL-адрес перенаправления, а не абсолютный?

Конкретная проблема, которую я пытаюсь решить, заключается в следующем: когда я запускаю и тестирую приложение локально, я хочу перенаправить на localhost:3000/start вместо http://www.example.org/start. Пока что я не нашел лучшего метода, чем переключение файла конфигурации перед каждым запуском / развертыванием, но это раздражает и, конечно же, о нем легко забыть...

1 ответ

Решение

Вы можете сделать его таким динамичным:

const msalConfig = {
  auth: {
    redirectUri: window.location.origin + '/start'
  }
}

Это берет текущее происхождение и добавляет / начало в конец. Таким образом, он работает локально и в развернутой среде (ах).

Другие вопросы по тегам