. net core 3.1 Angular Неудачная авторизация в IIS - PullRequest
0 голосов
/ 11 марта 2020

У меня проблема при публикации приложения в IIS. Кажется, что часть аутентификации базового шаблона Asp net нуждается в чем-то для обработки запросов, которые не приходят от localhost:

Я размещаю приложение на localhost/app, но angular authorization.service делает запросы к localhost/_configuration, а не к localhost/app/_configuration. Я думаю, что причина в том, что шаблон Asp. net использует fetch для получения данных:

const response = await fetch(ApplicationPaths.ApiAuthorizationClientConfigurationUrl);

Лучше всего, если я изменю команду на :

const response = await this.httpClient.get<Response>(ApplicationPaths.ApiAuthorizationClientConfigurationUrl).toPromise();

, тогда я получаю бесконечное l oop.

Если я добавлю app/ к началу ссылок в api-authorization.constants.ts, то запрос приходит по нужному адресу, однако после

authorize?clientid=....

поступает звонок

error?errorid=....

* Вызов 1029 *

, а затем мое приложение angular пытается маршрутизировать на app/home/error, что не удается.

Я не вижу, что не так в моей конфигурации, это в значительной степени по умолчанию. В IIS Express работает без проблем.

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 21 марта 2020

было две ошибки в asp net репозитории ядра. Первая ошибка была связана с ссылками авторизации, которые начинались с '/'. Вторая ошибка заключалась в невозможности обработки безопасности, если в URI, на котором вы развернули приложение, была прописная буква. Эта часть вызвала попытку приложения angular направить к app / home / error, которая не удалась.

...