Swagger-PHP 用于为 Swagger-UI 生成 JSON 文件

2024-01-04

我正在尝试使用 Swagger-PHP 生成 JSON 文件,以便我可以将它与 Swagger-UI 一起使用来自动记录文档。

我尝试了链接:-https://github.com/zircote/swagger-php https://github.com/zircote/swagger-php

我还尝试解决那里的文档http://zircote.com/swagger-php/installation.html http://zircote.com/swagger-php/installation.html

但我运气不好,无法实施。

我能够正确安装作曲家。 Swagger-PHP 包也已正确安装。

但问题是我无法使用/理解他们提供的测试示例。

所以如果有人解决过这个问题请帮忙!!

提前致谢 !!


您只需在代码、模型示例中添加注释(也称为注释)即可:

/**
* @SWG\Model(
* id="vps",
* required="['type', 'hostname']",
*  @SWG\Property(name="hostname", type="string"),
*  @SWG\Property(name="label", type="string"),
*  @SWG\Property(name="type", type="string", enum="['vps', 'dedicated']")
* )
*/
class HostVps extends Host implements ResourceInterface
{
    // ...
}

控制器示例:

/**
 * @SWG\Resource(
 *  basePath="http://skyapi.dev",
 *  resourcePath="/vps",
 *  @SWG\Api(
 *   path="/vps",
 *   @SWG\Operation(
 *    method="GET",
 *    type="array",
 *    summary="Fetch vps lists",
 *    nickname="vps/index",
 *    @SWG\Parameter(
 *     name="expand",
 *     description="Models to expand",
 *     paramType="query",
 *     type="string",
 *     defaultValue="vps,os_template"
 *    )
 *   )
 *  )
 * )
 */
 class VpsController extends Controller
 {
     // ...
 }

然后在控制台中:

php swagger.phar ./your-code-source/ -o ./directory-for-output-files

然后在 Swagger UI 中链接生成的文件。 这是帮助吗?

顺便说一句,这个文档:http://zircote.com/swagger-php/annotations.html http://zircote.com/swagger-php/annotations.html是不完整的。最好依赖解析器错误,例如:

php swagger.phar ./skynode-api/api/ -o ./foo
Swagger-PHP 0.9.0
-----------------
[INFO] Skipping unsupported property: "foo" for @Swagger\Annotations\Property, expecting "name", "description", "type", "format", "items", "uniqueItems", "required", "minimum", "maximum", "enum", "defaultValue", "_partialId", "_partials" in HostVps in /home/kane/some-dir/some-file.php on line 3

EDIT:Swagger 2.0有相当好的规格在 GitHub 上 https://github.com/swagger-api/swagger-spec/blob/master/versions/2.0.md

顺便说一句,考虑使用招摇编辑器 http://editor.swagger.io/创建要在 Swagger UI 中使用的 api 规范文件 (json/yaml)。因为 php 文件中的内联 SWG 文档非常丑陋,而且 IDE 中没有自动完成支持。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Swagger-PHP 用于为 Swagger-UI 生成 JSON 文件 的相关文章

  • 如何在此查询中获取以 KM 为单位的距离

    salons Salon select salons gt selectRaw 6371 acos cos radians cos radians lat cos radians lng radians sin radians sin ra
  • PHP 7 上可以指定多个返回类型吗?

    我有一些可以返回的方法两种返回类型之一 我正在使用利用 MCV 的框架 因此重构这几个函数尤其没有吸引力 是否可以声明返回类型返回其中之一而在其他情况下失败 function test if this gt condition false
  • 如何在时事通讯中发送图像?

    谁能告诉我如何将图像作为时事通讯的主体部分发送 我如何从后端添加任何图像 以便当我向订阅者发送新闻通讯时 我想要显示的图像作为邮件的主体部分 实际上我想说的是 我有一个可以输入文本的表单 并且该文本在时事通讯中效果很好 现在我也想在表单中添
  • 设置了 @version $Id$ 的 SVN Checkout

    我在 Subversion 中进行开发 在每个 PHP 文件的顶部都有以下注释块
  • Laravel 4 - JOIN - 相同的列名

    我目前使用此代码从数据库中检索所需的数据 query DB table packages gt join assigned packages function join use id join gt on packages id assig
  • Facebook Graph API 使用 json 和 C# 检索好友

    我正在使用 C 和 Graph API 进行工作 并且能够获取 Facebook 用户个人资料信息 例如 ID 姓名和电子邮件 然后反序列化 JSON 以便能够将值分配给标签 然而 我的问题是 当我去获取好友列表或任何与此相关的列表时 如何
  • .htaccess 重写规则冲突

    我正在编写代码并构建一个 htaccess 文件 其中包含以下内容 RewriteEngine on RewriteRule A Za z0 9 A Za z0 9 index php id 1 NC L Handle page reque
  • 使用 Vercel 进行 Vue.js 历史记录模式的服务器配置?

    我设置了一个非常基本的 Vue js 应用程序 主要使用这些步骤 https auth0 com docs quickstart spa vuejs 01 login 当我将路由器添加到该项目时 它询问我是否要使用历史模式 我说是 现在我正
  • 如何将多个数据系列导入 Highcharts

    以下代码有效 var options1 chart renderTo container1 series getJSON tokyo jsn function data options1 series 0 data data var cha
  • 将文本中的 URL 替换为 HTML 链接

    不过 这是一个设计 例如 我放置了一个链接 例如 http example com http example com in textarea 我如何让 PHP 检测到它是http 链接 然后将其打印为 print a href http w
  • WordPress 子主题 style.css 不起作用

    我创建了一个与父主题格式相同的文件结构 我的父主题称为 Alpine Alpine 中有一个functions php 和style css 文件 似乎没有任何其他 style css 文件 我创建了一个名为 Alpine child 的目
  • 在 Symfony 中重定向之前访问调试(分析器)信息

    提交表单后 我通常将用户重定向到另一个页面 表单本身除外 因此我丢失了配置文件 调试信息 如日志 我的意思是 单击 调试工具栏 后 我会获得有关重定向后请求的信息 但我确实知道 Symfony 保留有关上一页的信息 我的意思是它不会忘记它
  • Yii2 - 如何自动加载自定义类?

    我创建了以下自定义类 我想在我的 Yii2 应用程序中使用它 common components helper CustomDateTime php namespace common components helper class Cust
  • XML 和 INI 哪个更快?

    我想知道 XML 是否比 INI 更快 反之亦然 我正在开发一个包含许多文件的网站 这个问题与我的问题有关关于包含许多文件 https stackoverflow com questions 7777522 too many include
  • 如何使用 phpStorm 从远程服务器删除文件

    所以我已经将远程服务器添加到 phpStrom 中 我可以在那里更改文件 但是 如果我删除文件 它们只会从我的计算机上消失 而不是在服务器上消失 如何使用 phpStorm 从远程服务器删除文件 To manually从远程位置删除文件 使
  • en_CA 语言环境中 sprintf 中的逗号作为小数分隔符

    是否可以在 en CA 语言环境中的 sprintf 中使用逗号作为小数点分隔符 sprintf 能够识别区域设置 并且将始终使用当前的区域设置 但您可以使用数字格式 http php net manual en function numb
  • 如何从 PHP 的 sha256 加密迁移到 bcrypt?

    登录 rows sql gt fetch PDO FETCH ASSOC us id rows id us pass rows password us salt rows password salt status rows attempt
  • Doctrine 模型的默认排序属性

    我想知道是否有办法声明我的学说模型的默认顺序 e g 我有一个work模型并且它有photos 当我加载作品时 与其关联的所有照片都会加载到 work gt photos 当我显示它们时 它们是按 ID 排序的 在另一个字段上声明默认顺序或
  • 将Json字符串映射到java中的map或hashmap字段

    假设我从服务器返回了以下 JSON 字符串 response imageInstances one id 1 url ONE two id 2 url TWO 杰克逊代码大厦 JsonProperty 我怎样才能得到HashMap对象出来了
  • 如何找到数组中的最小数字并返回该数组的主索引?

    我有一个如下所示的数组 我想找到 diff 索引中数字最小的数组 所以在这种情况下 我想取回数组 7 我需要的只是数组编号 即 7 而不是任何其他信息 我知道我可以使用 array column 轻松找到最小的数字 但如何返回整个数组索引

随机推荐

  • 如何从多个进程中拆分和重新加入 STDOUT?

    我正在开发一个管道 该管道有几个随后合并的分支点 它们看起来像这样 command2 command1 command4 command3 每个命令写入 STDOUT 并通过 STDIN 接受输入 来自 command1 的 STDOUT
  • 如何将长日期值转换为 mm/dd/yyyy 格式[重复]

    这个问题在这里已经有答案了 可能的重复 将长字符串转换为日期 https stackoverflow com questions 11753341 converting long string to date 我需要转换long日期值至月
  • 如何对应用程序状态建模?

    我正在编写一个游戏 我想以一种干净的 面向对象的方式对其不同的状态进行建模 我猜 Game Maker 的类比是框架 以前 我是通过以下方式完成的 class Game enum AppStates APP STARTING APP TIT
  • SQL Server 数据库迁移向导发生了什么?

    SQL Server 数据库迁移向导 又名 SQL Azure 迁移向导 以前位于http sqlazuremw codeplex com http sqlazuremw codeplex com 但已经消失了 我试图通过谷歌搜索它的新家
  • 未找到带标签的句柄可放入图例折线图中

    我正在使用 matplotlib 绘制折线图 在所有其他情况下 它通常会自动检测图例 但这次我使用数据透视表来绘制图表 我认为这会阻止它 我不确定如何绘制图例 No handles with labels found to put in l
  • GWT + 流程构建器

    是否可以将 ProcessBuilder 与 GWT 一起使用 当我声明一个新 ProcessBuilder 的实例时 我得到 java lang ProcessBuilder is not supported by Google App
  • 将 .Glade(或 xml)文件转换为 C 源代码的工具

    我正在寻找可以将 Glade 或 xml 文件转换为 C 源代码的工具 我尝试过 g2c Glade To C Translator 但我正在寻找 Windows 二进制文件 任何人都知道有什么好的窗口工具 Thanks PP 你不需要工具
  • Firebase 存储下载我上传的原始文本,而不仅仅是网址

    我上传了一个原始的String使用提供的示例对 firebase 存储进行 测试 here https firebase google com docs storage web upload files upload from a stri
  • DatePicker 的 setMinDate() [重复]

    这个问题在这里已经有答案了 我在几个地方看到了有关堆栈溢出的这个问题 但给出的答案对我不起作用 所以我在这里 我需要将日期选择器的最小日期动态设置为当前日期 我的最低 API 是 12 我试过这个 Calendar minCalendar
  • 如何阻止一个节点上的死锁导致整个集群崩溃?

    我正在 MariaDB 下运行 3x 节点 Galera 集群 该应用程序采用 PHP 语言 使用 mysqli 扩展 偶尔我会得到一个Deadlock https dev mysql com doc refman 5 5 en error
  • 使用 javascript 更改图像不透明度

    如何使用 javascript 更改图像不透明度 我将使用 javascript 创建淡入淡出效果 有示例吗 有没有像 image opacity 这样的东西可以通过 JS 代码更改 它是如何设置的 thanks 假设您使用纯 JS 请参阅
  • Spring @Autowire 关于属性与构造函数

    因此 由于我一直在使用 Spring 如果我要编写一个具有依赖项的服务 我将执行以下操作 Component public class SomeService Autowired private SomeOtherService someO
  • 如何获取网页的最后修改日期? [复制]

    这个问题在这里已经有答案了 我想知道如何使用 C 获取网页的最后修改日期 我尝试了下面的代码 但我只得到今天的日期 HttpWebRequest req HttpWebRequest WebRequest Create http www c
  • React 开发工具中组件的forwardRef 是什么意思以及如何使用它?

    当我在 React 开发工具中检查组件结构时 我可以看到有一个forwardRef标记 我很困惑 因为源代码中没有使用它的迹象 它是怎么存在的以及我该如何使用它 The forwardRef调用不在您自己的代码中 它们在您正在使用的包中 s
  • 输入毫无意义的签名

    Consider a gt a gt a gt Bool 这个签名有什么有意义的定义吗 也就是说 定义不是简单地忽略论证 x gt a gt Bool 看来这样的签名还有很多 可以立即排除 Carsten K nig 在评论中建议使用自由定
  • 如何在 grep 中使用 POSIXLY_CORRECT?

    有一个变量POSIXLY CORRECT https www gnu org software bash manual bashref html index POSIXLY 005fCORRECT in Bash POSIXLY CORRE
  • TFS 2017:在同一 TFS 服务器上克隆/复制集合

    我想在同一个 TFS 服务器上创建我们的生产集合的克隆 副本 以用作沙箱 开发环境 恢复集合的备份并重命名它很容易 但我知道当我尝试附加集合时会出现 GUID 冲突 可能还有其他冲突 有没有办法解决 或者我只需要购买一台带有单独 TFS 实
  • 对齐 OCR 文本

    我正在根据历史记录创建一个数据库 这些历史记录是我从书籍中拍摄的页面 100K 页 在对每个页面进行 OCR 之前 我编写了一些 python 代码来进行一些图像处理 由于这些书中的数据没有采用格式良好的表格 因此我需要将每个页面分为行和列
  • 在java中使用外部硬件组件?

    我谈论的是可以通过某些端口或其他方式从外部连接到计算机系统的组件 而不是属于计算机本身的一部分或外围设备的任何组件 实际上 正在从事一个大学项目 用于控制铁路道口的交通灯和围栏 我有 Java 知识 但我不知道如何让交通灯和吊杆栏杆在基于
  • Swagger-PHP 用于为 Swagger-UI 生成 JSON 文件

    我正在尝试使用 Swagger PHP 生成 JSON 文件 以便我可以将它与 Swagger UI 一起使用来自动记录文档 我尝试了链接 https github com zircote swagger php https github