`

用swagger-php/ui做API测试

阅读更多
功能:
1 swagger-php根据自定义的规则生成API请求规则,通过phar生成json文件
2 打开swagger-ui/dist/index.html。输入json文件夹目录地址(需要同源),swagger-ui会根据请求的JSON生成API,页面很漂亮。输入请求参数后执行会获取返回值。
缺点:不能对返回的数据进行验证。功能类似chrome的插件postman。
Api Action测试参考代码:
Resource/PostAction.php
Java代码  收藏代码
<?php 
/**
* @SWG\Resource(
*   apiVersion="2.2.0",
*   swaggerVersion="1.2",
*   basePath="http://test.xxx.com/Api/Post",
*   resourcePath="/Post",
*   description="Operations about Post",
*   produces="['application/json']"
* )
*/ 
 
/**
* @SWG\Api(
*   path="/apps",
*   @SWG\Operation(
*     method="POST",
*     summary="Find app by buID",
*     notes="Returns apps based on BUID",
*     type="Post",
*     nickname="apps",
*     authorizations={},
*     @SWG\Parameter(
*       name="apiVersion",
*       description="api version",
*       required=true,
*       type="integer",
*       format="int64",
*       paramType="form",
*       minimum="1.0",
*       allowMultiple=false
*     ),
*     @SWG\Parameter(
*       name="sessionID",
*       description="user login session",
*       required=true,
*       type="string",
*       paramType="form",
*       defaultValue="9f6cdd0858a1e93b1426659b283a93ec",
*       allowMultiple=false
*     ),
*    @SWG\Parameter(
*       name="buID",
*       description="BU ID",
*       required=true,
*       type="int64",
*       paramType="form",
*       allowMultiple=false
*     ),
*     @SWG\ResponseMessage(code=400, message="Invalid ID supplied"),
*     @SWG\ResponseMessage(code=404, message="Post not found"),
*     @SWG\ResponseMessage(code=405, message="Invalid input"),
*     @SWG\ResponseMessage(code=200, message="success")
*   )
* )
*/ 

项目描述信息
Info/api.php
Java代码  收藏代码
<?php 
 
/**
* @SWG\Info(
*   title="MY Project",
*   description=" xxx",
* )
*
*/ 

readme
Java代码  收藏代码
# Usage of API Docs 
### Raw Spec Structure 
* Info - General Info. 
* Model - Entity Class 
* Resource - API endpoint 
 
### Compile API info. 
* after modify the spec, run shell script, as follows. 
 
    `cd api-docs` 
     
    `./genDocumentation.sh` 
 
* the compiled content (.json) is stored in documentation/Output/ 
 
### View API docs 
* visit http://{domain}/documenation/ 


sh 执行文件
Java代码  收藏代码
#!/bin/sh 
../swagger-php/swagger.phar ../output-docs -o ../documentation/output/ 
分享到:
评论

相关推荐

    swagger-ui-master

    Swagger UI 是一个强大的工具,用于展示和测试基于 Swagger 规范(OpenAPI Specification)编写的RESTful API。在本文中,我们将深入探讨如何利用 CodeIgniter 框架结合 Swagger UI 来实现接口文档的自动化生成,...

    Laravel开发-swagger-ui-lumen

    Swagger-UI 是一个流行的工具,用于展示和测试基于 OpenAPI 规范的 RESTful API,而 Lumen 是 Laravel 的轻量级版本,特别适合构建高性能的微服务。 **一、Laravel 和 Lumen 概述** Laravel 是一款广泛使用的 PHP ...

    Laravel开发-laravel-swagger-api

    完成配置后,`laravel-swagger-api`会在指定的路由下提供Swagger UI,通过浏览器访问即可查看和测试API。同时,它还能生成JSON格式的OpenAPI规范文件,供其他工具(如Postman、Swagger Codegen等)使用。 **总结** ...

    Laravel开发-swagger-lume

    - 使用:运行命令生成Swagger JSON文件,然后通过Swagger UI查看和测试API。 5. **API文档**:Swagger-Lume生成的文档是实时更新的,随着代码的更改自动更新,确保文档始终与代码同步。 6. **优势**:集成Swagger...

    TP5集成swagger

    ### TP5集成Swagger知识点详解 #### 一、Swagger概述与工作原理 ...通过以上步骤,您可以在ThinkPHP 5项目中顺利集成并使用Swagger,自动化生成高质量的API文档,提高开发效率和文档维护的便捷性。

    Laravel开发-laravel-swagger-api .zip

    这将在`public`目录下生成一个`swagger.json`文件,这个文件包含了所有API的详细描述,可以用Swagger UI展示或者供其他客户端使用。 为了在浏览器中查看生成的Swagger UI,你可以使用`laravel/ui`包创建一个简单的...

    Laravel开发-swagger-generator

    总结来说,Laravel开发-Swagger Generator是Laravel项目中提高API文档质量和效率的有效工具,通过使用它可以方便地创建和维护符合Swagger规范的API文档,使得开发、测试和维护工作变得更加顺畅。通过学习和掌握如何...

    swagger-php-master.zip_cannotmzf_swagger_swagger php

    一旦有了规范文件,你可以选择使用Swagger UI或其他工具来展示和测试API。 总的来说,Swagger PHP 是PHP开发中一个不可或缺的工具,它极大地简化了API文档的创建和维护,促进了API的标准化和互操作性,提升了整个...

    初始化基于laravel5+swagger-php的api接口自动生成系统.zip

    2. **Swagger-Php**:了解如何通过注解来描述API接口,生成符合OpenAPI规范的JSON文档,以及如何利用Swagger UI进行接口测试。 3. **数据库设计**:查看MySQL数据库的表结构设计,学习如何使用Eloquent ORM进行数据...

    Laravel开发-l5-swagger-redoc

    在本文中,我们将深入探讨如何在Laravel框架中整合Swagger和Redoc,这两个工具对于构建RESTful API的文档和测试至关重要。Laravel是PHP的世界中一个流行且强大的Web应用程序框架,而Swagger则是一个用于设计、构建、...

    Laravel开发-l5-swagger-redoc .zip

    Swagger UI是Swagger的可视化界面,可以显示API的定义并提供测试功能。 Redoc是另一个出色的API文档展示工具,它基于OpenAPI规范,提供了一种美观、响应式的界面来展示API文档。Redoc的亮点在于其现代且易于阅读的...

    yii2-swagger:yii2与swagger-php

    Yii2 Swagger扩展 与yii2的集成。 将与集成。 安装 安装此扩展的首选方法是通过 。 无论运行 php composer.phar require --prefer-dist light/yii2-swagger "~1.0.4" --dev 或添加 "light/yii2-swagger": "~1.0.4...

    Laravel开发-laravel-swagger-testcase

    此外,Swagger UI可以让开发者在浏览器中直接测试API,无需编写实际的测试代码。 测试用例是软件开发中的关键部分,对于Laravel来说,我们可以使用内置的PHPUnit测试框架。每个API的测试用例通常包含对各个HTTP方法...

    Laravel开发-swagger-lite

    最后,为了让用户能够访问生成的 Swagger UI,你需要在 Laravel 的路由文件 `routes/api.php` 或 `routes/web.php` 中添加一条路由,指向 Swagger-Lite 提供的视图: ```php Route::get('/api/documentation', '\L5...

    Laravel开发-laravel-swagger

    Swagger UI 提供了一个交互式的界面,允许用户浏览、尝试和测试 API 功能,而无需编写任何代码。 在 Laravel 中使用 `laravel-swagger`,你需要首先安装扩展包。通常,这可以通过 Composer 来完成,执行以下命令: ...

    swagger小白学习总结

    Swagger 是一个流行的 API 框架,用于生成 API 文档和在线测试 API。下面是 Swagger 的学习总结,包括 Swagger 的概念、作用、集成到 Spring Boot 中的步骤等。 一、Swagger 简介 Swagger 是一个基于 OpenAPI 规范...

    Laravel开发-laravel5-swagger

    在终端中运行`php artisan l5-swagger:generate`,这将解析你的代码中的注解并生成JSON文件,供Swagger UI使用。 总之,将Swagger集成到Laravel 5项目中,能够帮助我们更好地管理和文档化API,同时提供了交互式的...

Global site tag (gtag.js) - Google Analytics