我有一个使用 Codeigniter 并使用此库的 REST Web 服务:https://github.com/chriskacerguis/codeigniter-restserver
我想为此 Web 服务生成文档。我希望使用 Swagger UI 来生成此文档。但是,我没有找到任何文档如何将 Swagger 与 Codeigniter 一起使用。
唯一使用这两种技术的项目是这个,但没有好的文档:https://github.com/panxp/codeigniter-swagger
有人可以粘贴使用这两种技术的示例或给我一个好的文档的链接吗? 当然,如果有另一个好的库来生成文档,如果它可以与 Codeigniter 一起使用,我会接受它。
在过去的项目中,我使用过 http://apidocjs.com/,我发现它非常易于使用,并且可以在多个环境中直接生成。我花了大约 15-20 分钟才开始查看已经安装了 npm 的情况。这个并不真正关心目录或代码结构,只关心您在文档块中提供的信息。
您可以使用 https://github.com/manish29ify/codeigniter3-restapi-with-swagger 它仍在开发中,但您可以非常轻松地将 Swagger 与 PHP Rest 服务器一起使用
自动化 API 文档的推荐方法是从源代码生成 OpenAPI 规范文件,该文件可供其他工具(如编辑器、查看器、实时测试等)使用。
OpenAPI 规范文件可以采用 Yaml 或 JSON 格式,定义参考可以在此 github 存储库中找到:OpenAPI 规范 v3.1.1
对于 CodeIgniter (PHP),您可以使用 swagger-php,它是一个 Composer 包,能够根据 PHP 源代码中的属性或注释生成 OpenAPI 规范文件。
来自 Swagger-PHP 网站 :
1。使用作曲家安装:
composer require zircote/swagger-php
2。更新您的代码
<?php
use OpenApi\Annotations as OA;
/**
* @OA\Info(
* title="My First API",
* version="0.1"
* )
*/
class OpenApi
{
}
class MyController
{
/**
* @OA\Get(
* path="/api/data.json",
* @OA\Response(
* response="200",
* description="The data"
* )
* )
*/
public function getResource()
{
// ...
}
}
3.生成 OpenAPI 文档
./vendor/bin/openapi src -o openapi.yaml
4。探索您的 API 并与之交互
使用 Swagger UI 等 OpenAPI 工具来探索您的 API 并与之交互。