Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/255.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 配置Swigger UI路由_Php_Swagger_Swagger Ui_Laravel 5.7_Swagger Php - Fatal编程技术网

Php 配置Swigger UI路由

Php 配置Swigger UI路由,php,swagger,swagger-ui,laravel-5.7,swagger-php,Php,Swagger,Swagger Ui,Laravel 5.7,Swagger Php,我想使用swagger来记录laravel API,并让用户使用与petstore.swagger.io类似的路径查看应用程序 这是我使用swagger php&l5swagger软件包所采取的步骤 作曲家需要zircote/swagger php 作曲家需要Darkanline/l5大摇大摆 在config/app.php文件中添加了L5Swagger\L5SwaggerServiceProvider::class, 向BookController添加注释 运行命令php artisan l5

我想使用swagger来记录laravel API,并让用户使用与petstore.swagger.io类似的路径查看应用程序

这是我使用
swagger php
&
l5swagger
软件包所采取的步骤

  • 作曲家需要zircote/swagger php
  • 作曲家需要Darkanline/l5大摇大摆
  • 在config/app.php文件中添加了
    L5Swagger\L5SwaggerServiceProvider::class,
  • 向BookController添加注释
  • 运行命令
    php artisan l5-swagger:generate
  • 然后我向BookController添加注释,如下所示

    /**
     * @OA\Info(
     *      version="1.0.0",
     *      title="Laravel Test OpenApi",
     *      description="L5 Swagger OpenApi description",
     *      @OA\Contact(
     *          email="menadio1@gmail.com"
     *      ),
     *     @OA\License(
     *         name="Apache 2.0",
     *         url="http://www.apache.org/licenses/LICENSE-2.0.html"
     *     )
     * )
     */
    /**
     *  @OA\Server(
     *      url=L5_SWAGGER_CONST_HOST,
     *      description="L5 Swagger OpenApi dynamic host server"
     *  )
     *
     *  @OA\Server(
    *      url="https://projects.dev/api/v1",
     *      description="L5 Swagger OpenApi Server"
     * )
     */
    
    class BookController extends Controller
    {
        /**
         * @OA\Get(
         *      path="/books",
         *      operationId="getBooksList",
         *      tags={"Books"},
         *      summary="Get list of books",
         *      description="Returns list of books",
         *      @OA\Response(
         *          response=200,
         *          description="successful operation"
         *       ),
         *       @OA\Response(response=400, description="Bad request"),
         *     )
         *
         * Returns list of books
         */
        public function index()
        {
            return BookResource::collection(Book::all());
        }
    }
    

    此时,我不知道在加载swagger UI以查看API文档时使用什么url。这是目前在编码挑战中唯一阻碍我前进的因素,因此我有点迫切需要帮助。

    转到项目的根目录,运行此命令生成文档

    php artisan l5-swagger:generate   
    

    然后导航到以查看您的swagger ui

    转到项目的根目录并运行此命令以生成文档

    php artisan l5-swagger:generate   
    

    然后导航到以查看您的swagger ui

    Phew…我能够使用
    加载swagger ui并查看api文档http://localhost:8000/api/documentation


    我希望这将为其他人在第一次使用swagger时节省大量的时间。

    Phew…我能够使用
    加载swagger UI并查看api文档http://localhost:8000/api/documentation


    我希望这将为其他人在第一次使用swagger时节省大量的时间。

    这让我感到困惑
    http://yourapp.local/api/docs
    现在我在本地服务器上以及从文档中获取的注释中执行此操作,有两个
    @OA\Serve
    我应该使用哪一个,或者我必须在这里配置一个?这让我感到困惑
    http://yourapp.local/api/docs
    现在我在本地服务器上以及从文档中获取的注释中执行此操作,有两个
    @OA\Serve
    我将使用它们中的哪一个,或者我必须在这里配置一个?