>  기사  >  PHP 프레임워크  >  Laravel 5.6에서 Swagger를 사용하는 방법

Laravel 5.6에서 Swagger를 사용하는 방법

藏色散人
藏色散人앞으로
2021-03-03 15:42:062758검색

Laravel 5.6에서 Swagger를 사용하는 방법

laravel 5.6에서 swagger 사용하기

이 글을 작성할 때 내 laravel 버전은 5.6.285.6.28

安装

composer require darkaonline/l5-swagger


Using version ^5.6 for darkaonline/l5-swagger
...
  - Installing swagger-api/swagger-ui (v3.17.4)
  - Installing doctrine/annotations (v1.6.0)
  - Installing zircote/swagger-php (2.0.13)
  - Installing darkaonline/l5-swagger (5.6.5)
...

运行

php artisan vendor:publish

选择L5SwaggerL5SwaggerServiceProvider这项
这时会添加两个文件

  • /config/l5-swagger.php
  • /resources/views/vendor/l5-swagger/index.blade.php

配置

app/Http/Controllers/Controller.php文件中class前添加注释

<?php namespace App\Http\Controllers;

use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
/**
 * @SWG\Swagger(
 *   basePath="/calculate-rates",
 *   @SWG\Info(
 *     title="项目名称 API",
 *     version="1.0.0"
 *   )
 * )
 */
class Controller extends BaseController
{
    use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
}

运行命令

php artisan l5-swagger:generate

打开你的项目网址http://localhost/api/documentation,你会看到swagger已经运行成功了,但是没有显示任何API文档。

编写文档

http://localhost/home 示例:
HomeControllerindex方法上面编写文档

/**
     * @SWG\Get(
     *   path="/home",
     *   summary="用户资料",
     *   @SWG\Response(response=200, description="请求成功"),
     *   @SWG\Response(response=401, description="用户验证失败"),
     *   @SWG\Response(response=500, description="服务器错误")
     * )
     *
     */
    public function index()
    {
        return view('home');
    }

再次运行命令

php artisan l5-swagger:generate

回到http://localhost/api/documentation

설치

rrreee
Run Laravel 5.6에서 Swagger를 사용하는 방법 rrreeeL5SwaggerL5SwaggerServiceProvider를 선택하세요
두 개의 파일이 추가됩니다
  • /config/l5-swagger.php
  • /resources/views/vendor /l5- swagger/index.blade.php
app/Http/Controllers/Controller.php 파일의

구성

클래스 댓글 추가

rrreee명령을 실행rrreee

프로젝트 URL http://localhost/api/documentation을 열면 swagger가 성공적으로 실행되었지만 표시되지 않는 것을 볼 수 있습니다. 모든 API 문서.

문서 작성

http://localhost/home 가져오기 예: 🎜HomeControllerindex 메소드에 작성 Document🎜rrreee🎜명령을 다시 실행하세요🎜rrreee🎜http://localhost/api/documentation로 돌아가서 새로고침하면 문서가 나옵니다. 다음과 같을 겁니다🎜🎜🎜🎜🎜🎜 🎜추천: 🎜최신 5개 Laravel 비디오 튜토리얼🎜🎜🎜🎜

위 내용은 Laravel 5.6에서 Swagger를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 segmentfault.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제