Это мой первый проект с использованием ASP.Net Core, и я столкнулся с некоторыми проблемами, которые в основном смог решить сам. Однако прямо сейчас я столкнулся с проблемой, что мое веб-приложение не может найти мой API после публикации на нашем сервере.
Во-первых, важно знать, что в моем проекте 2 приложения.

Внутри API у меня есть несколько контроллеров с маршрутизацией по умолчанию.
т.е. [Route("api/Address")], когда я запускаю веб-приложение через Visual Studio, все работает нормально и без проблем.
Сейчас пытаюсь опубликовать приложение.
Итак, я опубликовал (Localy) приложение и скопируйте его, вставив в inetpub / wwwroot / somefolder. Проверил структуру папок, и я ясно вижу, что внутри находится BetonApi.dll. Что здорово. поскольку я еще хочу опубликовать API как автономный веб-API. Я хочу использовать его в форме как .dll, и это отлично работает. Я вижу сетку в своем приложении, и данные правильно извлекаются из BetonAPI.
При публикации на сервере, однако я получаю сообщение об ошибке, что API не найден. Я попытался поиграть с URL-адресом, поскольку это было первое, что пришло мне в голову, я проверил, находится ли BetonAPI.dll внутри папки публикации. Пробовал поискать в Google, но ничего похожего не нашел.
Короче говоря:
Приложение получает данные из API при запуске через VS
Приложение получает данные из API после локальной публикации
Приложение нет извлекает данные из API после публикации на сервере.
@UdaraKasun Эм нет, но я тоже не делал этого на своей локальной машине.
«Когда публикуется на сервере»? Обратите внимание: если вы жестко запрограммировали http://localhost в своем веб-приложении, в любом браузере (на любом компьютере) он попытается найти веб-API на локальном хосте, что допустимо только тогда, когда браузер находится на самом сервере.
@LexLi Нет, я не кодировал ни Localhost, ни API жестко. Я получаю базовый URL-адрес из своего startup.cs, также я запускаю его в браузере сервера.
Вы можете использовать FRT, чтобы увидеть, что дает вам 404, docs.microsoft.com/en-us/iis/troubleshoot/…. Без дополнительных данных причина должна быть ясна.
Ваше приложение и api - это разные проекты или один и тот же проект?
это другое приложение внутри того же .sln
Вы проверяли http или https





Вы инициировали в рамках услуг