【问题标题】:Swagger PHP API Documentation (executing php files to make json)Swagger PHP API Documentation(执行php文件制作json)
【发布时间】:2014-09-18 12:00:49
【问题描述】:

我正在尝试在 PHP swagger 中制作 Restful API 文档,我之前所做的是我更改了 json 以解决问题,现在我知道我们可以通过制作 PHP 文件和使用 swagger 符号来制作 json。我确实检查了 Pet.php 示例并获得了代码,但我不知道如何执行该文件以获取可以与我的 Swagger UI 链接的 json api 文档。我阅读了文档,但它是如此令人困惑,我不知道如何解决这个问题,任何人都可以帮忙。这是我研究但没有价值的链接。

http://zircote.com/swagger-php/using_swagger.html

Swagger-PHP for generating JSON file for Swagger-UI

谁能一步一步告诉我如何在json中生成api文档。非常感谢他谢谢

【问题讨论】:

    标签: php json swagger


    【解决方案1】:

    在 swagger-php 2.0 中有两种方法可以实现。

    我。 第一个解决方案是创建一个控制器或脚本,它将为每个请求生成文档。在您希望快速查看更改结果的开发环境中,这是一个很好的解决方案。

    这是执行此操作的控制器示例。

    <?php
    namespace Controllers;
    
    use Swagger\Annotations as SWG;
    use Swagger;
    
    /**
     * @SWG\Swagger(
     *      basePath="/path/to/opration/",
     *      produces={"application/json"},
     *      swagger="2.0",
     *      @SWG\Info(
     *          version="1.0.0",
     *          title="My API"
     *      )
     * )
     *
     */
    class Documentation {
    
        const API_PATH = "path/to/my/documented/files/";
    
        public function show(){
            $swagger = Swagger\scan(self::API_PATH);
    
            return json_enconde($swagger); //you can echo this in the calling script.
        }
    }
    

    注意: 上面的示例假设您使用 Composer 安装了 Swagger-php,并且调用脚本包含 composer 生成的自动加载文件(通常称为:vendor/autoload.php)。

    二。 此处描述了包含生成静态 json API 文档的第一个解决方案:https://stackoverflow.com/a/21380432/2853903

    此解决方案推荐用于生产部署,您不希望在每个请求上重新生成文档。

    【讨论】:

      猜你喜欢
      • 2022-12-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-21
      • 1970-01-01
      • 1970-01-01
      • 2016-12-05
      • 1970-01-01
      相关资源
      最近更新 更多