ensi / openapi-psr7-validator
Validate PSR-7 messages against OpenAPI (3.0.2) specifications expressed in YAML or JSON
Installs: 36 367
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 105
pkg:composer/ensi/openapi-psr7-validator
Requires
- php: >=7.2
 - ext-json: *
 - devizzent/cebe-php-openapi: ^1.0
 - league/uri: ^6.3 || ^7.0
 - psr/cache: ^1.0 || ^2.0 || ^3.0
 - psr/http-message: ^1.0 || ^2.0
 - psr/http-server-middleware: ^1.0
 - respect/validation: ^1.1.3 || ^2.0
 - riverline/multipart-parser: ^2.0.3
 - symfony/polyfill-php80: ^1.27
 - webmozart/assert: ^1.4
 
Requires (Dev)
- doctrine/coding-standard: ^8.0
 - guzzlehttp/psr7: ^2.0
 - hansott/psr7-cookies: ^3.0.2 || ^4.0
 - phpstan/extension-installer: ^1.0
 - phpstan/phpstan: ^1
 - phpstan/phpstan-phpunit: ^1
 - phpstan/phpstan-webmozart-assert: ^1
 - phpunit/phpunit: ^7 || ^8 || ^9
 - symfony/cache: ^5.1
 
This package is auto-updated.
Last update: 2025-10-14 09:27:22 UTC
README
Forked from thephpleague/openapi-psr7-validator
Installation
composer require ensi/openapi-psr7-validator
Additional
Добавлена проверка BodySchemaValidator на отсутствие неописанных ключей в ответе.
Для того, чтобы пропустить данную проверку, в схеме необходимо добавить ключ:
x-skip-response-validation: true
Пример:
Error:
  type: object
  properties:
    code:
      description: Строковый код ошибки
      type: string
    message:
      description: Описание ошибки
      type: string
    meta:
      x-skip-response-validation: true
      type: object
      description: Объект с мета-информацией
  required:
    - code
    - message
Все возможные рекурсии в схемах также должны сопровождаться ключем x-skip-response-validation.