Laravel L5-Swagger

L5-Swaggerとは

Laravelから各Swaggerツールを利用できるツール
Swagger」参照

設定

インストール

composer.phar require “darkaonline/l5-swagger”

ドキュメント

Jsonリソース参照

@OA\Property(
 type="object",
 property="名前",
 description="説明",
 allOf={@OA\Schema(ref="#/components/schemas/TestResource")}
)

Json直接記述

@OA\Property(
 type="object",
 property="名前",
 description="説明",
 example={"項目A": "aaa", "項目B": "bbb"}
)

/**
* @OA\Info(
*   version=”1.0.0″,
*   title=”L5-Swaggerサンプル”,
*   description=”サンプル”,
* )
*/
class HelloController extends Controller
{
 /**
  * @OA\Get(
  *  path=”/hello”,
  *  operationId=”hello”,
  *  tags={“タグ”},
  *  summary=”ハロー”,
  *  description=”こんにちは”,
  *  @OA\Response(
  *   response=200,
  *   description=”成功”,
  *   @OA\JsonContent(
  *    type=”object”,
  *    @OA\Property(
  *     property=”message”,
  *     type=”string”,
  *     description=”メッセージ”,
  *     example=”Hello”
  *    )
  *   )
  *  )
  * )
  */
 public function index()
 {
  〜
 }
}

APIドキュメント生成

php artisan l5-swagger:generate
→ \storage\api-docs\api-docs.json

自動生成設定
※.env
L5_SWAGGER_GENERATE_ALWAYS=true

APIドキュメント表示

ブラウザで
http://〜/api/documentation
を表示

SwaggerUIが起動される
Swagger」参照

 
 

=ffffff&f=ifr”>

WEB

前の記事

Go