同一方法的两条路径

2023-12-19

一直尝试使用 Swagger 为我的 PHP Rest API 生成文档,使用 swagger-php。

它工作得非常好,不太确定我是否喜欢由于文档而拥有巨大的评论块,但这不是问题。

我有两条路:

/user/ [POST]
/user/login [POST]

它们都在我的 PHP 代码中调用相同的方法:login()。

有没有办法让我说 /user/ [POST] 只是 /user/login [POST] 的别名?

我希望他们都出现在操作列表中,并附上他们的文档,并说他们做同样的事情,只是用不同的路径向用户提供选项。

我当然可以复制粘贴注释块,但我真的不希望只调用另一种方法的单行方法有 50 行注释块。

有任何想法吗 ?


在 swagger-php 中使用引用已经可以通过使用@SWG\Path.

/**
 * @SWG\Post(
 *   path="/user/login",
 *   @SWG\Response(response=200, description="OK")
 * )
 * @SWG\Path(path="/user/", ref="#/paths/user~1login");
 */
function login() {
  ...
}

但请记住,招摇是为了document你的 API,如果 /user/login 是用于登录的规范 API 端点,我什至不会在 swagger 文档中公开别名。

@Mark 在 swagger-php 中path仍然拥有运营,但它使用一些技巧 https://github.com/zircote/swagger-php/blob/master/src/Processors/BuildPaths.php来创建@SWG\Path自动地,这避免了样板文件,因为一般用例是为每个 php 方法记录一个 http 方法,但是如果您的方法处理多个 http 方法,那么使用起来可能会更短@SWG\Path直接地:

/**
 * @SWG\Path(
 *   path="/example",
 *   @SWG\Get(response=200, description="OK"),
 *   @SWG\Post(response=200, description="OK"),
 *   @SWG\Put(response=200, description="OK")
 * )
 */
 function thisMethodHandlesGetPostAndPutRequests() {
 }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

同一方法的两条路径 的相关文章

随机推荐

  • Java 检查点

    我希望我的问题不太模糊 但我正在寻找有关 Java 检查点的更多信息 我必须生成一个大搜索树 我希望能够在程序中断后 例如突然重新启动后等 恢复计算 因此我需要检查点 我发现关于这方面的文档很少 而且我的印象是很多开发在 90 年代中期就停
  • NSArray 对象和铸造

    我有课A有财产NSString name 如果有一个NSArray并添加许多A对象放入此数组中 每次检索对象时是否都需要进行转换 IE NSString n NSString arr objectAtIndex 1 或者有另一种方法可以做到
  • PDFBox:从 ​​PDF 中删除单个字段

    我描述该问题的最简单方法是 我们使用 PDFbox 从 HelloSign 发送给我们的 PDF 中仅删除一个字段 例如信用卡号码 有问题的数据将始终位于最后一页 并且始终位于页面中的相同坐标处 需要从 PDF 中完全删除数据 我们不能简单
  • 将 geom_smooth 与变换后的 y 一起使用

    有没有办法使用geom smooth当 的时候y公式中的变量是否被变换 例如 This works myplot lt qplot speed dist data cars myplot geom smooth method lm form
  • 在matlab中将列表拆分为多个变量

    如果我有一个简短的列表 假设有两个或三个元素 我希望有一个函数可以将其拆分为多个变量 像这样的东西 li 42 43 a b split li gt a 42 gt b 43 我正在寻找一些方法来使我的代码在 matlab 中更短 在某些情
  • 来自带有 tf.data 的多个 TFRecord 文件的批量顺序数据

    让我们考虑将数据集拆分为多个 TFRecord 文件 1 tfrecord 2 tfrecord etc 我想生成大小的序列t say 3 由来自同一 TFRecord 文件的连续元素组成 我不希望序列包含属于不同 TFRecord 文件的
  • 从网络服务器持续同步更改

    我正在寻找一种方法将我的文件从 Web 服务器 Ubuntu 14 同步到本地服务器 Windows Server Web 服务器创建本地服务器需要的小文件 Web 服务器位于 DMZ 中 可通过 SSH 访问 只有本地服务器才能访问 We
  • Firebase on() 不返回任何内容

    我有这段代码使用 on 从 Firebase 获取数据 在 on 内部我创建了一个对象 我想将其发送出函数以供将来使用 使用 return 但它似乎不返回任何内容 所以问题是我怎样才能做到正确 postsRef on value funct
  • Ansible - 仅在满足前提条件时运行一系列任务

    我有一个需要从远程 URL 安装的软件包 如下所示 get url url http foo com foo deb dest tmp command dpkg skip same version i tmp foo deb apt upd
  • 将 JsonNode 转换为 POJO

    这可能看起来有点不寻常 但我正在寻找一种有效的方法来转换 映射JsonNode into a POJO 我将模型的一些信息存储在 json 文件中 并且必须支持模型的几个版本 我所做的是将 json 文件加载到 JsonNode 的内存中
  • 结构初始值设定项错误中的值太少

    我收到错误 在 cluster append clusters Cluster Point rand Float64 Point 行的结构初始化器中的值太少 引发错误的函数如下 func initClusters k int cluster
  • C++11随机引擎和分布交互和成本

    我有很多关于随机引擎和分布 它们的成本和交互的问题 Is std random device一个昂贵的 重型可建造的 物体 如果可能的话 我应该只为我的应用程序创建一个吗 Are RandomNumberDistribution对象是昂贵的
  • 尝试运行 artisan dump-autoload 时出现 proc_open 错误

    当我尝试运行 php artisan dump autoload 时 出现以下错误 root server var mysite php artisan dump autoload Generating optimized class lo
  • 如何在perl中用新模式替换匹配的模式? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我正在尝试替换与以下模式匹配的字符串 my string details of candidate name of candidate ag
  • 当我使用 Laravel Tinker 会话来摆弄 Observer 类中的模型时,有没有办法捕获?

    我有一个Observer设置为收听Model的活动 以保留我的Controller清除日志消息 我的实现如下 首先 一个 store 方法只做它应该做的事情 根据有效参数创建并保存新模型 app Http Controllers Examp
  • 将带有通配符 (*) 的文件复制到 bash 脚本中的文件夹 - 为什么它不起作用?

    我正在编写一个 bash 脚本来创建一个文件夹 并将文件复制到该文件夹 它可以从命令行运行 但不能从我的脚本运行 这里有什么问题吗 bin sh DIR NAME files ROOT FOOD DIR food FRUITS DIR fr
  • 在 Active Perl 中安装旧版本的模块

    我正在尝试在 Perl 中安装 Date Manip 模块 我正在运行 Perl 版本 5 14 2 它似乎没有通过 PPM 成功安装 PPM 引发 401 需要访问错误 我猜测这里的错误是 ppm 中的模块的 Perl 版本已经过时 由于
  • SQLAlchemy 为曾孙链接关联代理?

    我有四个这样的课程 Group Parent Child Toy Group has a parents关系指向Parent Parent has a children关系指向Child Child has a toys关系指向Toy Pa
  • 如何通过IIS7发送电子邮件?

    我正在尝试在 Windows 7 计算机上的 IIS7 中设置 SMTP 服务器 我已将其设置为 将电子邮件发送到本地主机 端口 25 无需身份验证 但是当我尝试从 C 程序以编程方式连接时 出现错误 发送邮件失败 内部异常 无法连接 因为
  • 同一方法的两条路径

    一直尝试使用 Swagger 为我的 PHP Rest API 生成文档 使用 swagger php 它工作得非常好 不太确定我是否喜欢由于文档而拥有巨大的评论块 但这不是问题 我有两条路 user POST user login POS