目录
安装
配置
编写文档
首页 php框架 Laravel 在laravel 5.6 中如何使用swagger

在laravel 5.6 中如何使用swagger

Mar 03, 2021 pm 03:42 PM
laravel

在laravel 5.6 中如何使用swagger

在laravel 5.6 中使用swagger

写本篇文章时,本人laravel版本为5.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

选择L5Swagger\L5SwaggerServiceProvider这项
这时会添加两个文件

  • /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中刷新,文档就已经出来了,应该是长这个样子
092796de1cd6e8df738beaa5928c6d8.png

以上是在laravel 5.6 中如何使用swagger的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Stock Market GPT

Stock Market GPT

人工智能驱动投资研究,做出更明智的决策

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

如何在Laravel中使用雄辩 如何在Laravel中使用雄辩 Aug 21, 2025 pm 02:30 PM

创建模型和迁移:使用phpartisanmake:modelPost-m生成模型和迁移文件,定义表结构后运行phpartisanmigrate;2.基本CRUD操作:通过Post::all()、find()、create()、save()和delete()方法实现数据的查询、创建、更新和删除;3.使用Eloquent关联:在模型中定义belongsTo和hasMany关系,并通过with()方法实现关联数据的预加载以避免N 1查询问题;4.Eloquent查询:利用查询构造器链式调用如where

如何与Laravel建立社交网络 如何与Laravel建立社交网络 Sep 01, 2025 am 06:39 AM

Yes,youcancreateasocialnetworkwithLaravelbyfollowingthesesteps:1.SetupLaravelusingComposer,configurethe.envfile,enableauthenticationviaBreeze/Jetstream/Fortify,andrunmigrationsforusermanagement.2.Implementcorefeaturesincludinguserprofileswithavatarsa

如何使用Laravel的任务计划 如何使用Laravel的任务计划 Aug 31, 2025 am 06:07 AM

Laravel的TaskScheduling系统允许通过PHP定义和管理定时任务,无需手动编辑服务器crontab,只需在服务器添加一条每分钟执行一次的cron任务:*cd/path-to-your-project&&phpartisanschedule:run>>/dev/null2>&1,随后所有任务均在App\Console\Kernel类的schedule方法中配置;1.定义任务可使用command、call或exec方法,如$schedule-

如何与Laravel中的多态关系一起工作 如何与Laravel中的多态关系一起工作 Aug 25, 2025 am 10:56 AM

PolymorphicrelationshipsinLaravelallowamodellikeCommentorImagetobelongtomultiplemodelssuchasPost,Video,orUserusingasingleassociation.2.Thedatabaseschemarequires{relation}_idand{relation}_typecolumns,exemplifiedbycommentable_idandcommentable_typeinaco

如何使用Laravel构建移动应用程序后端 如何使用Laravel构建移动应用程序后端 Sep 02, 2025 am 08:34 AM

使用Laravel构建移动端后端需先安装框架并配置数据库环境;2.在routes/api.php中定义API路由并使用资源控制器返回JSON响应;3.通过LaravelSanctum实现API认证,生成令牌供移动端存储和认证;4.处理文件上传时验证文件类型并存储至public磁盘,同时创建软链接供外部访问;5.生产环境需启用HTTPS、设置限流、配置CORS、进行API版本控制并优化错误处理,同时建议使用API资源、分页、队列和API文档工具以提升可维护性和性能。使用Laravel可构建安全、可

如何国际化Laravel申请 如何国际化Laravel申请 Aug 22, 2025 pm 02:31 PM

创建语言文件:在resources/lang目录下为每种语言(如en、es)创建子目录并添加messages.php文件,或使用JSON文件存储翻译;2.设置应用语言:通过中间件读取请求头Accept-Language或通过URL前缀检测语言,使用app()->setLocale()设置当前语言,并在Kernel.php中注册中间件;3.使用翻译函数:在视图中使用__(),trans()或@lang获取翻译内容,推荐使用支持回退的__();4.支持参数和复数:在翻译字符串中使用占位符如:n

如何将消息记录到Laravel中的文件? 如何将消息记录到Laravel中的文件? Sep 21, 2025 am 06:04 AM

LaraveluseMonologTologMessagesViathelogFacade,withDefaultLogSstoreDinstorage/logs/logaver.log.configurechannelsinconfig/loggpocontrolOlOutput; theDefeftoconTrolOutput; theDefeftStackChannAnneLagateSmultipleHersMultipleHerslikeSlikeSlikesingLikeSingLikeSingle,whatwrile.afile.usel.uselel.uselel.usecy.useleleel.use)

如何在Laravel中实现'记住我”功能 如何在Laravel中实现'记住我”功能 Aug 31, 2025 am 08:53 AM

确保用户表中存在remember_token列,Laravel默认迁移已包含该字段,若无则通过迁移添加;2.在登录表单中添加name为remember的复选框以提供“记住我”选项;3.手动认证时将remember参数传递给Auth::attempt()方法以启用持久登录;4.“记住我”默认持续5年,可通过config/auth.php中的remember_for配置项自定义时长;5.Laravel自动在密码更改或用户删除时使remember_token失效,建议生产环境使用HTTPS保障安全;6

See all articles