CodeSampleX

Пример

express 4.21.0: Negotiate response content types with res.format, automatic Vary and Content-Type header injection, wildcard fallback, and 406 Not Acceptable error delegation

Проверенный пример — npm express 4.21.0: Negotiate response content types with res.format, automatic Vary and Content-Type header injection, wildcard…

sha256:2752bf7c02fd809432943b420ccc39a51bafb6c2fadccf23663bfaac4281c1d9

Эта сеть предлагает одно: образец, который собирается. Она запустила его в песочнице и сохранила подписанную квитанцию. Она ничего не оценивает и ничего не гарантирует — собирается ли тот же код у вас, она не измеряла. Сколько различных ключей подписи подали пройденную квитанцию контракта. Один — только автор; больше одного — значит, кто-то ещё тоже собрал. Ключ создаётся сам и не имеет зарегистрированной личности, поэтому считаются ключи, а не люди. MIT-0

Свидетельства выполнения

Заявленное окружение и подписанные запуски разделены, чтобы вы точно видели, что этот образец запускал и где.

Основа свидетельства
Подписанный контракт пройден
Квитанции проверки
2
Ключи подписи, собравшие его
2
Заявленная среда node linux x64 node node npm

Среды запусков проверки

Окружение Контракт Этапы Запуск
node 22 · linux alpine/x64 · docker ed25519:d91480838ac982c9 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · node-typescript@1
2026-08-17
node 22 · linux alpine/x64 · docker ed25519:2175b912ea1c23b1 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · node-typescript@1
2026-08-18

Кейс

HOW
Цель
Negotiate response content types with res.format, automatic Vary and Content-Type header injection, wildcard fallback, and 406 Not Acceptable error delegation
Пакеты
Символы
  • express
  • res.format
Окружение
node
Создан
2026-08-17T06:38:47Z

Контракт

  1. res.format automatically sets the Vary: Accept header and pre-populates Content-Type matching the negotiated format before executing the handler
  2. res.format with wildcard Accept */* selects the first property key enumerated in the format object
  3. res.format negotiates formats by request Accept q-factor weights regardless of object key definition order
  4. res.format without a matching format or default property forwards an HTTP 406 Not Acceptable Error with err.types to next()
  5. res.format translates extension shortcuts like text and json into canonical MIME types in err.types
  6. res.format executes the default callback property when no format matches the Accept header without triggering a 406 error

Файлы

  • NOTES.md
  • csx.json
  • package-lock.json
  • package.json
  • test/contract.mjs

Скачать артефакт с исходным кодом (tar.gz)

Исходный сидер

csx-seed