Неверное перенаправление на локальный хост

Я создаю приложение Angular, которое взаимодействует с API MS Graph, для этого я использовал MSAL. При использовании ng serve внутри Angular CLI все работает нормально.

Позже я обернул это угловое приложение электроном, чтобы развернуть его как настольное приложение. При запуске электроники вход через Microsoft работает нормально, но после входа я перенаправляюсь на ложный Localhost-Address. Меня перенаправляют на http: // localhost: 8080 /, но мой URI перенаправления - http: // localhost: 8080 / # / home.

При перенаправлении на ложный адрес в Dev-Console / Network появляется сообщение об отказе в соединении, и экран остается пустым в электронном виде.

Это проблема с Azure AD? Я не могу удалить и повторно зарегистрировать свое приложение в Azure AD (как показано здесь, Azure AD перенаправляет в неправильное расположение (localhost) после аутентификации), потому что я нахожусь в корпоративной среде.

Кто-нибудь может иметь к этому отношение?


person Marius R.    schedule 10.12.2020    source источник
comment
Указанный в коде URL-адрес перенаправления совпадает с URL-адресом перенаправления в приложении AAD?   -  person Carl Zhao    schedule 10.12.2020
comment
да, они оба localhost: 8080 / # / home   -  person Marius R.    schedule 11.12.2020


Ответы (2)


Я нашел решение своей проблемы. Я изменил перенаправления на localhost: 8080 / без хэша и всего, что за ним следует. Проблема заключалась в том, что сервер перенаправляет только на часть без всего, что находится после хеширования. Это из-за HashLocationStrategy. Поэтому, когда я настраиваю Redirect как localhost: 8080 / # /, он фактически перенаправляет на localhost: 8080 /

person Marius R.    schedule 11.12.2020

Вот что у меня сработало:

Используйте msal://redirect в качестве URL-адреса перенаправления в приложении AAD и в качестве переменной redirectUri в приложении.

person Khyar Ali    schedule 22.12.2020