Ошибка 401: несанкционированное включение ASP.NET основной веб-API
Всем Привет
У меня есть веб-api и веб-сайт, разработанный на ASP.NET ядро (против 2017 года). Веб - сайт хорошо работает на локальном хостинге и может вызывать веб-api и получать отдачу.
Затем оба сайта были развернуты в Windows Server 2012 R2, работающем на IIS 8.5. я следил за многочисленными статьями о том, как настроить IIS для ASP.NET ядро и я удовлетворены тем, что конфигурация правильная.
Я могу перейти по обоим URL-адресам, и ничего не происходит. Однако, когда веб-сайт пытается вызвать веб-api, я получаю ошибку 401: несанкционированный
Кто-нибудь испытал это и может порекомендовать какое-то решение.
Что я уже пробовал:
Я попытался использовать Postman, чтобы увидеть, могу ли я добраться до API и вернуть некоторые значения, вызовы были успешными и вернули запрошенные данные.
Я посмотрел разрешения на папку и на сайт сайта web api. Все выглядит нормально (как и должно быть)
Saineshwar Bageri
Вы пробовали просматривать приложение локально на веб-сервере
Super Superman
Есть ли у вас где-нибудь атрибут [Authorize] в ваших классах веб-API? Локально вы будете авторизованы, просто войдя в свою машину, но это не считается, когда она развернута на сервере.
Tomz_KV
Моя проблема была похожа на вашу. В среде разработчиков все работало нормально. Это также было прекрасно, когда веб-api размещался в рабочей среде и вызывался из разработчика asp.net app. 401 несанкционированная ошибка произошла только тогда, когда веб-api и приложение были запущены на рабочем сервере. Проверка подлинности Windows использовалась для обоих случаев. Исправление (или обходной путь) состояло в том, чтобы вызвать веб-api, используя его IP-адрес вместо дружественного url. Это может быть не самый благоприятный способ сделать это, так как IP - адрес не имеет SSL-сертификата.
Можете ли вы поделиться тем, как вы решили свою проблему?
KathiravanK
Я также сталкиваюсь с той же проблемой может ли кто нибудь помочь мне решить эту проблему