Как создать Swagger JSON маршрутов с помощью Laravel

Я хочу создать этот тип JSON, используя swagger в laravel, как это возможно?

"parameters": [
{
"in": "body",
"name": "body",
"required": false,
"schema": {
"$ref": "#/definitions/CustomerAuthenticateResponse"}
}
],

Как это создать этот маршрут: # / Определения / CustomerAuthenticateResponse ?

1

Решение

Я получил решение передать запрос тела (JSON) с помощью Swagger.

контроллер:

class abcController extends Controller
{
/*
* @SWG\Post(
*      path="/api/user",
*       tags={"User"},
*      operationId="ApiV1saveUser",
*      summary="Add User",
*      consumes={"application/json"},
*      produces={"application/json"},
*      @SWG\Parameter(
*          name="body",
*          in="body",
*          @SWG\Schema(ref="#/definitions/User"), //User Model
*      ),
*      @SWG\Response(
*         response=200,
*         description="Success"*      ),
* )
*/
public function store(Request $request)
{
}
}

Модель пользователя:

/**
* @SWG\Definition(
*      required={"name","email"},
*      type="object",
*      @SWG\Xml(name="User")
* ),
* @SWG\Property(format="byte", type="string", property="name", description="User Name"),
* @SWG\Property(format="byte", type="string",property="email", description="Email")
*/
class User extends Model
{
}

Спасибо,

1

Другие решения

Взгляните на это пакет
После установки вы можете поместить определения в phpdoc вашего контроллера.

class PetController
{
/**
* @OAS\Post(
*     path="/pet",
*     tags={"pet"},
*     summary="Add a new pet to the store",
*     operationId="addPet",
*     @OAS\Response(
*         response=405,
*         description="Invalid input"*     ),
*     security={
*         {"petstore_auth": {"write:pets", "read:pets"}}
*     },
*     requestBody={"$ref": "#/components/requestBodies/Pet"}
* )
*/
public function addPet()
{
}
}

источник

0

По вопросам рекламы [email protected]