Dex.RfcExceptionsHandler
8.1.0
dotnet add package Dex.RfcExceptionsHandler --version 8.1.0
NuGet\Install-Package Dex.RfcExceptionsHandler -Version 8.1.0
<PackageReference Include="Dex.RfcExceptionsHandler" Version="8.1.0" />
<PackageVersion Include="Dex.RfcExceptionsHandler" Version="8.1.0" />
<PackageReference Include="Dex.RfcExceptionsHandler" />
paket add Dex.RfcExceptionsHandler --version 8.1.0
#r "nuget: Dex.RfcExceptionsHandler, 8.1.0"
#:package Dex.RfcExceptionsHandler@8.1.0
#addin nuget:?package=Dex.RfcExceptionsHandler&version=8.1.0
#tool nuget:?package=Dex.RfcExceptionsHandler&version=8.1.0
Package Description
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- Dex.Extensions (>= 1.0.37)
- Dex.RfcAbstractions (>= 8.1.0)
- Grpc.Core.Api (>= 2.80.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Dex.RfcExceptionsHandler:
| Package | Downloads |
|---|---|
|
Dex.IdentityServer4
OpenID Connect and OAuth 2.0 Framework for ASP.NET Core |
GitHub repositories
This package is not used by any popular GitHub repositories.
# Changelog — Dex.RfcExceptionsHandler
Формат основан на [Keep a Changelog](https://keepachangelog.com/ru/1.1.0/).
Мажорная версия привязана к версии .NET; breaking-изменения помечаются в заголовке релиза.
## [8.1.0] — BREAKING
### Изменено
- Работает с новым контрактом `Dex.RfcAbstractions` 8.1.0 (`ErrorCategory` + `ErrorCode`
вместо `StatusCode` / `RfcType`). HTTP-статус и RFC 9457 `type` резолвит middleware.
- Новая категория `IntegrationError` мапится в HTTP 503 (серверная retriable-семантика,
попадает в `LogError` и алерты).
- Новая категория `Timeout` даёт `type` `timeout` (совпадает с fallback-путём 408).
- Fallback-`type` для незамапленных статусов стал URI-подобным: `/problems/unknown`
(ранее `unknown`), 418 → `/problems/im-a-teapot`.
- Доменный `ErrorCode` нормализуется и валидируется: снимаются префикс `/problems/` и
ведущие слэши; значение проверяется на формат lowercase-kebab
`^[a-z0-9]+(-[a-z0-9]+)*(/[a-z0-9]+(-[a-z0-9]+)*)*$`. Невалидное или вырожденное
значение отбрасывается с откатом на код по категории.
- Кастомные `Extensions` не могут перезаписать зарезервированные ключи RFC 9457
(`type`/`title`/`status`/`detail`/`instance`) и служебные (`exceptionType`/
`exceptionData`/`stackTrace`/`traceId`) — такие ключи пропускаются.
### Совместимость
- Минимально совместимая пара `Dex.RfcExceptionsHandler` + `Dex.RfcAbstractions` = 8.1.0.
- Сборки не strong-named: при смешении 8.0.x и 8.1.0 в рантайме возможен
`TypeLoadException`. Общие библиотеки исключений требуют одновременной пересборки.