Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用SLIM和SWAGGER的restfulapi文档?_Php_Slim_Swagger Php - Fatal编程技术网

Php 使用SLIM和SWAGGER的restfulapi文档?

Php 使用SLIM和SWAGGER的restfulapi文档?,php,slim,swagger-php,Php,Slim,Swagger Php,我对这东西不熟悉,但我喜欢它。我使用Slim框架制作了一个小的restapi。现在我想有一个关于它的持续文档。我认为招摇过市是正确的选择,但我还没有发现如何整合它 干杯并感谢您的耐心:)我想您正在寻找这个项目: 您将了解如何根据用户请求将文档生成为URL 基本上,您必须使用Swagger注释对代码进行注释,然后使用类似以下代码在Slim中创建另一条管线: <?php use Swagger\Swagger; $swagger = new Swagger('/project/root/top

我对这东西不熟悉,但我喜欢它。我使用Slim框架制作了一个小的restapi。现在我想有一个关于它的持续文档。我认为招摇过市是正确的选择,但我还没有发现如何整合它


干杯并感谢您的耐心:)

我想您正在寻找这个项目:

您将了解如何根据用户请求将文档生成为URL

基本上,您必须使用Swagger注释对代码进行注释,然后使用类似以下代码在Slim中创建另一条管线:

<?php
use Swagger\Swagger;
$swagger = new Swagger('/project/root/top_level');
header("Content-Type: application/json")
echo $swagger->getResource('/pet', array('output' => 'json'));

对adosaiguas答案的简短更新:

当使用和 可以使用以下代码提供一个api端点,提供swagger/OpenAPI 3.0 json描述:

use function OpenApi\scan;

 /**
 * @OA\Get(
 *     path="/openapi",
 *     tags={"documentation"},
 *     summary="OpenAPI JSON File that describes the API",
 *     @OA\Response(response="200", description="OpenAPI Description File"),
 * )
 */
$app->get('/openapi', function ($request, $response, $args) {
    $swagger = scan('--PATH TO PROJECT ROOT--');
    $response->getBody()->write(json_encode($swagger));
    return $response->withHeader('Content-Type', 'application/json');
});


我听说了大摇大摆的好消息——相关网站上有文档吗?然而,我猜这个主题在这里太宽泛了——请记住,堆栈溢出是针对涉及代码的编程问题的。如果你能尝试一下,编辑一下这个关于你的问题,那就太好了。我不知道如何在我的PHP项目中集成swagger。他们在Github上提供了一个php客户端和一个Java服务器集成教程,但这并没有让我走得更远。目前我不知道我必须采取哪些步骤。我不想在我的源代码中添加注释,然后运行创建文档的工具。谢谢!但是我该如何将swagger UI与之集成?启动并运行:)@user2942586您能解释一下您是如何启动并运行的吗?@LeonardChallis您需要安装swagger UI:并使其指向swagger路线。谢谢@adosaiguas