Я использую Swagger v.2 с аннотациями PHP, и сейчас я столкнулся с небольшой проблемой с «Примеры» в теле запроса.
В моем контроллере это выглядит так:
/**
* @SWG\Post(
* tags={"pet"},
* path="/pet",
* summary="Create a pet",
* description="Create a pet",
* operationId="CreatePet",
* consumes={"application/json"},
* produces={"application/json"},
* @SWG\Parameter(
* name="pet",
* required=true,
* in="body",
* description="Pet object to be created",
* @SWG\Schema(
* @SWG\Property(property="pet",ref="#/definitions/Pet")
* ),
* @SWG\Example(
* ref="somepath/pet.json"* )
* )
Мне нужно иметь разные примеры Schema в зависимости от определенных условий, и поэтому я хочу, чтобы примеры Schema были указаны в отдельном файле json, на который будут ссылаться таким образом. Я получил эту идею от эта ссылка.
Тем не менее, это не работает, и я получаю The annotation "@Swagger\Annotations\Example" doesn't exist
ошибка.
Если кто-нибудь знает, как это должно быть исправлено с помощью аннотаций, любая помощь будет принята с благодарностью.
Спасибо
Вы можете попробовать это.
/**
* @SWG\Post(
* tags={"pet"},
* path="/pet",
* summary="Create a pet",
* description="Create a pet",
* operationId="CreatePet",
* consumes={"application/json"},
* produces={"application/json"},
* @SWG\Parameter(
* name="pet",
* required=true,
* in="body",
* description="Pet object to be created",
* @SWG\Schema(
* @SWG\Property(property="pet",ref="#/definitions/Pet")
* ),
* example={
* "data": {
* "api_token": "ffdca087b7f97117330824ceea948a99",
* "id": "1",
* "email": "[email protected]",
* "first_name": "Joe",
* "last_name": "Doe"* }
* }
* )
Других решений пока нет …