当前位置: 首页 > 后端技术 > PHP

从零开始学Laravel(二)Laravel集成Swagger

时间:2023-03-30 02:08:44 PHP

我是从Java到php的,这两天开始学php,但是因为学的很快,3天就开始搭建Laravel框架,只说是知其然不知其所以然,相当于从头开始,写学习Laraveldemo的源码在我的githubakaedison/blog(github.com),如果刚开始学习可以参考它。1、swagger安装这里我们选择darkaonline/l5-swagger,它集成了很多swagger组件,比较方便。1.使用composer添加包,使用哪个版本可以参考下图,也可以在https://github.com/DarkaOnLin查看composerrequiredarkaonline/l5-swagger...2.发布phpartisanvendor:publish--provider"L5SwaggerL5SwaggerServiceProvider"3.如果Laravel>=5.5,找到app.php,添加L5SwaggerL5SwaggerServiceProvider::class如图现在swagger安装完成,接下来就是写配置和注释了.二、Swagger配置1.新建一个SwaggerController,用于测试swaggerphpartisanmake:controllerSwaggerController把SwaggerController的代码放在这里,可以参考注释的写法find($id);//returnresponse()就是返回想要json()转成json字符串但是是unicodesetEncodingOptions设置编码returnresponse()->json($book)->setEncodingOptions(JSON_UNESCAPED_UNICODE);}/***@OAget(*path="/api/allBook",*@OAResponse(response=200,description="查询所有书籍")*)*@returnIlluminateHttpJsonResponse|JsonResponse*/publicfunctiongetAllBook(){$books=Book::all();返回响应()->json($books)->setEncodingOptions(JSON_UNESCAPED_UNICODE);}}然后在route中配置2.根据写的注释生成api文档运行如下命令phpartisanl5-swagger:generate如果报错,多半是因为注释没有写对3.运行项目,访问Swagger-Uiphpartisanserve运行后,访问http://127.0.0.1:8000/api/documentation就可以看到自己写的接口文档了。简单的swagger安装配置和注释的编写就完成了,但这只是最简单的。文档注释的写法很复杂,要好好看看。