CodeSampleX

Пример

rate limit middleware for Express applications

sha256:388308f5450ade4c8b0bcc1d157c0d0b253dbf979d137d83688625a2cde5f958

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

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

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

Основа свидетельства
Подписанный контракт пройден
Квитанции проверки
1
Ключи подписи, собравшие его
1
Заявленная среда node 22.23 linux 24 · ubuntu · glibc 2.39 x64 node 22.23 javascript npm 10

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

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

Кейс

HOW
Цель
rate limit middleware for Express applications
Пакеты
Символы
  • rateLimit
Окружение
node 22.23.2
Создан
2026-08-21T13:44:05Z

Контракт

  1. rateLimit middleware allows requests within configured limit and attaches rate limit status metadata to request
  2. rateLimit sends HTTP 429 status code with configured message and sets standard Retry-After headers when request limit is exceeded
  3. rateLimit sets standard RateLimit draft-7 and legacy X-RateLimit headers indicating limit, remaining count, and reset time
  4. rateLimit partitions client rate limits using custom keyGenerator function with ipKeyGenerator fallback
  5. rateLimit invokes custom handler when client exceeds rate limit threshold
  6. rateLimit conditionally bypasses rate limiting when skip predicate returns true
  7. rateLimit resetKey resets accumulated hit count for a targeted client key
  8. MemoryStore tracks hit counts and supports increment, decrement, get, and resetKey operations

Файлы

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

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

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

аноним