Start Debugging

ASP.NET Core

120 статей · Страница8из12

Исправление: "415 Unsupported Media Type" от endpoint минимального API в ASP.NET Core 11

Минимальный API возвращает 415, когда Content-Type запроса не совпадает с тем, что связывает endpoint. Отправьте Content-Type: application/json для типа, связанного с телом, или используйте [FromForm] для форм и загрузки файлов.

Как настроить ответы об ошибках валидации в minimal API с помощью IProblemDetailsService в ASP.NET Core 11

Вызовите AddProblemDetails с колбэком CustomizeProblemDetails, чтобы изменить форму ответа 400, который встроенная валидация minimal API возвращает в ASP.NET Core 11: добавьте traceId, перепишите title, замените 400 на 422 или получите полный контроль с помощью собственного IProblemDetailsWriter.

Как настроить JWT bearer-аутентификацию в minimal API в ASP.NET Core 11

Полная рабочая настройка JWT bearer-аутентификации в minimal API в ASP.NET Core 11: установить пакет, подключить AddAuthentication().AddJwtBearer(), выпустить токен, защитить endpoint через RequireAuthorization, добавить политики ролей и claim, и протестировать всё это с помощью dotnet user-jwts.

JWT или cookie-аутентификация в ASP.NET Core 11: что выбрать?

Используйте cookie-аутентификацию для любого приложения, где единственным клиентом является браузер, а bearer-токены JWT приберегите для API, которые вызывают мобильные приложения, другие сервисы или сторонние клиенты. Вот полная матрица для принятия решения.
2026-06-25 errorscsharpdotnet

Исправление: 405 Method Not Allowed вместо 401 при использовании JWT bearer в ASP.NET Core

Защищённая конечная точка, возвращающая 405 вместо 401, почти всегда означает, что маршрутизация отклонила HTTP-метод до запуска аутентификации, либо схема cookie перехватила вызов проверки. Вот как определить, что именно.

Почему ваш JWT в ASP.NET Core возвращает 401 даже с действительным токеном

Действительный токен, который всё равно даёт 401, почти всегда означает, что обработчик bearer не запускался или запустился под не той схемой. Проверьте порядок middleware, схему по умолчанию, имя схемы и дошёл ли вообще заголовок до обработчика.

Как регистрировать и разрешать сервисы с ключом во внедрении зависимостей .NET 11

Зарегистрируйте несколько реализаций одного типа сервиса под ключом с помощью AddKeyedSingleton/Scoped/Transient, а затем разрешите их через [FromKeyedServices], GetRequiredKeyedService или KeyedService.AnyKey. Регистрации с ключом и без ключа находятся в раздельных таблицах, и именно это сбивает с толку почти всех.

Как валидировать издателя, аудиторию и срок действия JWT в ASP.NET Core 11

Полное руководство по TokenValidationParameters в ASP.NET Core 11: как работают ValidateIssuer, ValidateAudience и ValidateLifetime, какие на самом деле значения по умолчанию, почему Authority автоматически настраивает издателя и ключи подписи, ловушка ClockSkew в 5 минут и как читать коды ошибок IDX, когда отклоняется на вид валидный токен.

Как настроить CORS для защищённого JWT API в ASP.NET Core 11

Полное руководство по CORS для API с токеном bearer в ASP.NET Core 11: правильный порядок UseCors относительно аутентификации, почему токен bearer в заголовке Authorization не является учётными данными CORS, почему AllowAnyHeader работает, а ручной шаблон не покрывает Authorization, и как не дать предварительному запросу завершиться сбоем.

Blazor static SSR получает [SupplyParameterFromSession] в .NET 11 Preview 5

Чтение состояния сессии в статически серверно отрендеренном Blazor означало обращение к HttpContext.Session и сериализацию вручную. .NET 11 Preview 5 добавляет [SupplyParameterFromSession] для привязки свойства компонента напрямую к ключу сессии.
Назад Вперёд