63 lines
1.7 KiB
Dart
63 lines
1.7 KiB
Dart
/// Swagger配置管理
|
||
/// 集中管理所有Swagger相关的配置项
|
||
class SwaggerConfig {
|
||
/// Swagger JSON文档的URL
|
||
static const String swaggerJsonUrl =
|
||
'https://quanxue-test-api.w.23544.com:8843/swagger/v2/swagger.json';
|
||
|
||
/// 基础API URL
|
||
static const String baseUrl = 'http://192.168.2.7:17288';
|
||
|
||
/// API版本
|
||
static const String apiVersion = '/api/v1';
|
||
|
||
/// 默认生成器输出目录
|
||
static const String defaultGeneratorDir = 'generator';
|
||
|
||
/// 默认API文件目录
|
||
static const String defaultApiDir = 'api';
|
||
|
||
/// 默认模型文件目录
|
||
static const String defaultModelsDir = 'api_models';
|
||
|
||
/// 默认端点文件名
|
||
static const String defaultEndpointsFile = 'generated_api_paths.dart';
|
||
|
||
/// 默认文档文件名
|
||
static const String defaultDocumentationFile =
|
||
'generated_api_documentation.md';
|
||
|
||
/// HTTP请求头配置
|
||
static const Map<String, String> httpHeaders = {
|
||
'Accept': 'application/json',
|
||
'User-Agent': 'Flutter-SwaggerParser/1.0',
|
||
};
|
||
|
||
/// 生成选项配置
|
||
static const Map<String, dynamic> defaultGenerateOptions = {
|
||
'generateEndpoints': true,
|
||
'generateModels': true,
|
||
'generateDocs': true,
|
||
'useSimpleModels': false,
|
||
'separateModelFiles': true,
|
||
};
|
||
|
||
/// 获取完整的API基础URL
|
||
static String get fullApiUrl => '$baseUrl$apiVersion';
|
||
|
||
/// 获取控制器描述
|
||
/// 优先使用Swagger文档中的描述,否则使用控制器名称
|
||
static String getControllerDescription(
|
||
String controllerName, {
|
||
String? swaggerDescription,
|
||
}) {
|
||
// 1. 使用Swagger文档中的描述
|
||
if (swaggerDescription != null && swaggerDescription.isNotEmpty) {
|
||
return swaggerDescription;
|
||
}
|
||
|
||
// 2. 使用控制器名称
|
||
return controllerName;
|
||
}
|
||
}
|