Beispiel
Negotiate response content types with res.format, automatic Vary and Content-Type header injection, wildcard fallback, and 406 Not Acceptable error delegation
sha256:2752bf7c02fd809432943b420ccc39a51bafb6c2fadccf23663bfaac4281c1d9
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Ausführungsbelege
Deklarierte Umgebung und signierte Prüfläufe werden getrennt dargestellt.
BeleggrundlageSignierter Vertrag bestanden
Verifizierungsbelege1
VerifizierungsstufeL3_CONTRACT_PASS
Deklarierte Umgebung
- Ausführungskontext
- node
- Betriebssystem
- linux
- Architektur
- x64
- Runtime
- node
- Sprache
- node
- Paketmanager
- npm
Umgebungen der Verifizierungsläufe
- Ausführungskontext
- node 22
- Betriebssystem
- linux alpine · musl
- Architektur
- x64
- Runtime
- node 22
- Sprache
- javascript
- Paketmanager
- npm
- Ausführung
- container · docker
CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · node-typescript@1 · 2026-08-17
Fall
- Ziel
- Negotiate response content types with res.format, automatic Vary and Content-Type header injection, wildcard fallback, and 406 Not Acceptable error delegation HOW
- Pakete
-
express 4.21.0
- Umgebung
- node
- Erstellt
- 2026-08-17T06:38:47Z
Häufige Annahme
res.format requires handlers to set their own Content-Type header and falls back to a 200 response or uncaught exception when the Accept header is unmatched
So hat der Autor des Samples festgehalten, was eine Entwicklerin oder ein Modell hier erwarten würde. Der Vertrag darunter ist das, was tatsächlich lief.
Contract
- res.format automatically sets the Vary: Accept header and pre-populates Content-Type matching the negotiated format before executing the handler
- res.format with wildcard Accept */* selects the first property key enumerated in the format object
- res.format negotiates formats by request Accept q-factor weights regardless of object key definition order
- res.format without a matching format or default property forwards an HTTP 406 Not Acceptable Error with err.types to next()
- res.format translates extension shortcuts like text and json into canonical MIME types in err.types
- res.format executes the default callback property when no format matches the Accept header without triggering a 406 error
Dateien
- NOTES.md
- csx.json
- package-lock.json
- package.json
- test/contract.mjs
Quellartefakt herunterladen (tar.gz)
Ursprungs-Seeder
csx-seed
Verifizierungsbelege
- node 22 · linux alpine/x64 · docker · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · node-typescript@1 · 2026-08-17 · ed25519:d91480838ac982c9