A OpenAPI(Swagger) - user000422/0 GitHub Wiki
基本情報
参考記事: https://riotz.works/articles/lopburny/2019/07/21/efficient-way-to-manage-api-definition/ REST APIについて理解していることが前提。 RESTfulな設計に基づいている。 ソースコード修正と同時に定義の修正も行うため(行うはず)設計書が常に最新である。
■形式 「YAML」「JSON」の2形式に対応。 「YAML」の方が読み書きしやすいのでおすすめです。 「YAML」はコメントを記述できる。
with Laravel
# swagger-php 導入
composer require zircote/swagger-php
# OpenAPI yaml出力(下記の場合はLaravelプロジェクトのディレクトリでコマンド実行)
./vendor/bin/openapi app -o openapi.yaml
use OpenApi\Attributes as OA;
#[OA\Info(title: "Sample API", version: "0.1")] // Info 必須
#[OA\Server(url: "http://localhost:8080")]
class SampleController extends Controller
{
#[OA\Get(path: '/sample')] // HTTPメソッド 必須
#[OA\Response(response: 200, description: 'OK')] // Response詳細 必須
public function index()
{
//
}
}