Я новичок в Angular, webAPI и IIS, и у меня возник вопрос по поводу развертывания: Итак, я получил угловой интерфейс, вызывающий службу RESTful в webapi core 2.2.Позвольте мне рассказать вам о проблеме заранее: внутренние вызовы из Angular в службы RESTful чем-то блокируются, и я не знаю, как это исправить.Вот подробности
Я создал сайт в IIS (на нашем веб-сервере).Я установил для его пула приложений «нет управляемого кода».построил рабочую версию, перенес ее на веб-сервер.Скачал модуль «URL Rewrite», настроил его так, как я сказал здесь, включая web.config: https://devblogs.microsoft.com/premier-developer/tips-for-running-an-angular-app-in-iis/ (см. Веб-конфигурацию ниже)
И изображение показывает, как URL перезаписываетсязапись настроена.Вы также можете видеть, что на моем сайте 'Argonaut' есть подкаталог REST (который я сделал виртуальным каталогом ... Я думаю, что это было необходимо ...? Это сработало только после того, как я преобразовал обычный каталог в виртуальный).вызовы REST из клиента Angualr выглядят примерно так: http: /// rest / api / suppliergeneralchecks
, но они перенаправляются, как я полагаю, из-за некоторой комбинации угловых маршрутов \ модуля URL RE-WRITE\ my web.config file) ошибка:
ОШИБКА Ошибка: Uncaught (в обещании): Ошибка: не удается сопоставить ни один маршрут.Сегмент URL: ошибка «rest / api / suppliergeneralchecks»: невозможно сопоставить никакие маршруты.
Я предполагаю, что где-то мне нужно сделать URL-адрес REST исключением из маршрутизации ... я прав?Возможно где-то в web.config?
Большое спасибо!
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Angular Routes" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="/MyApp/" />
<!--<action type="Rewrite" url="/" />-->
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>