Недавно созданный .Net Core выдает HTTP 400 с использованием аутентификации Windows - PullRequest
0 голосов
/ 01 мая 2018

Следуя этому руководству https://docs.microsoft.com/en-us/aspnet/core/tutorials/first-web-api?view=aspnetcore-2.1 Я решил использовать проверку подлинности Windows в своем проекте веб-API.

При запуске .Net Core Web API / Site я получаю ошибку HTTP 400.

В чем заключается хитрость для запуска проектов .Net Core с использованием аутентификации Windows?

1 Ответ

0 голосов
/ 01 мая 2018

После запуска приложения вы увидите в окне вывода:

XYZ.API.Core> Корневой путь к содержимому: C: \ XYZ.API.Core> Сейчас прослушивается: http://localhost:29002
XYZ.API.Core> Приложение запущено. Нажмите Ctrl + C, чтобы выключить.
XYZ.API.Core> fail: Microsoft.AspNetCore.Server.IISIntegration.IISMiddleware [0]
XYZ.API.Core> 'MS-ASPNETCORE-TOKEN' не соответствует ожидаемому токену сопряжения 'de80437e-f80d-4f7f-b2b0-60f3bc81e9b0', запрос отклонен.

Итак, вы переходите к http://localhost:29002 и получаете ошибку HTTP 400. Причина в том, что это неверный URL для Windows Authenticated.

Откройте файл Properties> launchSettings.json и обратите внимание, что настройки IIS и URL-адрес приложения используют другой порт:

{   "iisSettings": {
    "windowsAuthentication": true,
    "anonymousAuthentication": false,
    "iisExpress": {
      "applicationUrl": "http://localhost:55403/",
      "sslPort": 0
    }

Просмотр к applicationUrl, указанному в файле launchSettings, например, http://localhost:55403/api/values возвращает ожидаемый json.

...