Problem Details-Typen
NENE2 gibt für alle Fehlerantworten application/problem+json zurück, gemäß RFC 9457.
Typkatalog
type | HTTP-Status | title | Erzeugt von |
|---|---|---|---|
…/not-found | 404 | Not Found | Route nicht gefunden; Note oder Tag mit angegebener Id nicht vorhanden |
…/method-not-allowed | 405 | Method Not Allowed | Falsche HTTP-Methode für eine bekannte Route |
…/invalid-json | 400 | Invalid JSON | Leerer Anfragekörper, ungültiges JSON oder kein JSON-Objekt |
…/validation-failed | 422 | Validation Failed | Ungültiger Anfragekörper oder fehlende Pflichtfelder |
…/unauthorized | 401 | Unauthorized | Bearer-Token fehlt oder ist ungültig |
…/too-many-requests | 429 | Too Many Requests | Rate-Limit überschritten (ThrottleMiddleware); Retry-After-Header enthalten |
…/payload-too-large | 413 | Payload Too Large | Anfragekörper überschreitet das konfigurierte Limit |
…/internal-server-error | 500 | Internal Server Error | Unbehandelte Ausnahme |
Basis-URI-Präfix: https://nene2.dev/problems/
Benutzerdefinierten Typ hinzufügen
- Erstellen Sie eine Domain-Exception-Klasse (z.B.
ProductNotFoundException). - Implementieren Sie
DomainExceptionHandlerInterfaceund rufen SieProblemDetailsResponseFactory::create()auf. - Registrieren Sie den Handler in
RuntimeServiceProvider.
Sehen Sie NoteNotFoundExceptionHandler und TagNotFoundExceptionHandler als konkrete Beispiele.