在现有 PHP 项目中设置 Swagger
Setting up Swagger in an existing PHP project
(请耐心等待,我从来没有设置过这样的东西,所以我在黑暗中摸索)
我观看了一些视频并阅读了有关安装 swagger-php that I found here 的文档,并且正在尝试设置一些基本的文档。
我在 /application/modules/apiv1/documentation
中创建了 api.php
:
<?php
require("library/vendor/autoload.php");
$openapi = \OpenApi\Generator::scan($_SERVER['DOCUMENT_ROOT'] . '/modules/apiv1/controllers');
header('Content-Type: application/json');
echo $openapi->toJson();
并在 /application/modules/apiv1/controllers
内有一个控制器 (LocationController
)。我用作测试假人的控制器操作之一是
/**
* @OA\Get(
* path="/modules/apiv1/controllers/location/get",
* @OA\Response(response="200", description="An example resource")
* )
*/
public function getAction()
{...}
我接下来要做的是在我的本地环境中实际查看生成的文档,但我不知道如何查看它,所以问题是:我是否需要进行更多设置才能成为可以查看吗?我已经完成了 zircote github: composer global require zircote/swagger-php
上显示的作曲家安装,但我不确定我的下一步是什么,而且我似乎找不到任何“如何为傻瓜设置 swagger”东西等等
- 下载 Swagger-Php 使用 Composer
- 添加注释以生成文档
- 生成 Swagger JSON 文件
- 下载 Swagger-UI 包到您的项目
- 将 Swagger-UI 连接到您的代码
更多信息在此link。
swagger-php
生成一个 JSON 文件,您可以将其转换为 YAML 或保留在 JSON 中。
该文件是一个 OpenAPI 描述文档,您可以将其与任何兼容的查看器一起使用。有关 OpenAPI standard/format 的更多信息,请阅读 here。
最常见的是 swagger-ui
which can be used locally or in the cloud (by uploading your definition document). There are others such as stoplight,它是基于云的。
下面答案中提供的link(here)其实很好的解释了如何get swagger-ui 运行如果你不放心与 JavaScript 生态系统。
(请耐心等待,我从来没有设置过这样的东西,所以我在黑暗中摸索)
我观看了一些视频并阅读了有关安装 swagger-php that I found here 的文档,并且正在尝试设置一些基本的文档。
我在 /application/modules/apiv1/documentation
中创建了 api.php
:
<?php
require("library/vendor/autoload.php");
$openapi = \OpenApi\Generator::scan($_SERVER['DOCUMENT_ROOT'] . '/modules/apiv1/controllers');
header('Content-Type: application/json');
echo $openapi->toJson();
并在 /application/modules/apiv1/controllers
内有一个控制器 (LocationController
)。我用作测试假人的控制器操作之一是
/**
* @OA\Get(
* path="/modules/apiv1/controllers/location/get",
* @OA\Response(response="200", description="An example resource")
* )
*/
public function getAction()
{...}
我接下来要做的是在我的本地环境中实际查看生成的文档,但我不知道如何查看它,所以问题是:我是否需要进行更多设置才能成为可以查看吗?我已经完成了 zircote github: composer global require zircote/swagger-php
上显示的作曲家安装,但我不确定我的下一步是什么,而且我似乎找不到任何“如何为傻瓜设置 swagger”东西等等
- 下载 Swagger-Php 使用 Composer
- 添加注释以生成文档
- 生成 Swagger JSON 文件
- 下载 Swagger-UI 包到您的项目
- 将 Swagger-UI 连接到您的代码
更多信息在此link。
swagger-php
生成一个 JSON 文件,您可以将其转换为 YAML 或保留在 JSON 中。
该文件是一个 OpenAPI 描述文档,您可以将其与任何兼容的查看器一起使用。有关 OpenAPI standard/format 的更多信息,请阅读 here。
最常见的是 swagger-ui
which can be used locally or in the cloud (by uploading your definition document). There are others such as stoplight,它是基于云的。
下面答案中提供的link(here)其实很好的解释了如何get swagger-ui 运行如果你不放心与 JavaScript 生态系统。