laravel - Laravel Lumen,Swagger 返回 json 而不是视图
问题描述
我使用以下配置安装了SwaggerLume
class ApiController extends Controller
{
/**
* @OA\Info(
* version="3.0",
* title="OpenApi Documentation",
* description=""
* )
*
* @OA\Server(
* url=SWAGGER_LUME_CONST_HOST,
* description="API Server"
* )
*/
...
}
和
<?php
return [
'api' => [
'title' => 'Swagger Lume API',
],
'routes' => [
'api' => '/api/documentation',
'docs' => '/api/oa',
'oauth2_callback' => '/api/oauth2-callback',
'assets' => '/swagger-ui-assets',
'middleware' => [
'api' => [],
'asset' => [],
'docs' => [],
'oauth2_callback' => [],
],
],
'paths' => [
'docs' => storage_path('api-docs'),
'docs_json' => 'api-docs.json',
'annotations' => base_path('app'),
'excludes' => [],
// 'base' => env('L5_SWAGGER_BASE_PATH', null),
/*
|--------------------------------------------------------------------------
| Absolute path to directory where to export views
|--------------------------------------------------------------------------
*/
'views' => base_path('resources/views/vendor/swagger-lume'),
],
'generate_always' => env('SWAGGER_GENERATE_ALWAYS', false),
'swagger_version' => env('SWAGGER_VERSION', '3.0'),
'proxy' => false,
'additional_config_url' => null,
'operations_sort' => env('L5_SWAGGER_OPERATIONS_SORT', null),
'validator_url' => null,
'constants' => [
'SWAGGER_LUME_CONST_HOST' => env('SWAGGER_LUME_CONST_HOST', 'http://my-default-host.com'),
],
];
我应该注意到我评论了
// 'base' => env('L5_SWAGGER_BASE_PATH', null),
因为 swagger 3 不支持 basePath。
和 .env
SWAGGER_LUME_CONST_HOST=payment.local
L5_SWAGGER_BASE_PATH=payment.local
但结果是
不是景色。我也有观点
解决方案
我在这里发布了一个适合我的解决方法。
推荐阅读
- node.js - 在 DialogFlow V2 中重置上下文
- javascript - 页面重新加载后未触发 window.onpopstate
- python-3.x - Python获取对象属性
- java - 从命令提示符执行 .jar 文件时发生 JNI 错误
- django - convert_datetimefield_value() 接受 4 个位置参数,但使用 django 和 mongodb 给出了 5 个
- botframework - 无法通过 Azure 机器人服务向你的机器人添加身份验证
- javascript - 如何在 React JS 中声明全局变量
- bash - 使用 shell/bash 脚本在不同的子目录中查找公共文件
- php - Laravel Restful API,创建和存储方法
- excel - Excel查找单元格中的每个单词并与列表匹配