新的配置方式,新的SimApiStorage,移除了SimApiUPload

This commit is contained in:
2021-06-03 13:43:46 +08:00
parent 8f41ba0150
commit 3ec378c4fa
8 changed files with 377 additions and 294 deletions
+73
View File
@@ -0,0 +1,73 @@
using System;
using System.Collections.Generic;
using Swashbuckle.AspNetCore.SwaggerUI;
namespace SimApi.Configs
{
/// <summary>
/// 文档组配置
/// </summary>
public class SimApiDocGroupOption
{
/// <summary>
/// 文档标识
/// </summary>
public string Id { get; set; }
/// <summary>
/// 文档名称
/// </summary>
public string Name { get; set; }
/// <summary>
/// 文档描述
/// </summary>
public string Description { get; set; }
}
/// <summary>
/// 授权配置, Type支持 "SimApiAuth","ClientCredentials","Implicit","AuthorizationCode"
/// </summary>
public class SimApiAuthOption
{
public string[] Type { get; set; } = new[] {"SimApiAuth"};
public string Description { get; set; } = "认证服务器颁发的AccessToken";
public string AuthorizationUrl { get; set; }
public string TokenUrl { get; set; }
public Dictionary<string, string> Scopes { get; set; }
}
/// <summary>
/// 文档配置
/// </summary>
public class SimApiDocOptions
{
/// <summary>
/// 文档组配置
/// </summary>
public SimApiDocGroupOption[] ApiGroups { get; set; } = new[]
{
new SimApiDocGroupOption
{
Id = "api",
Name = "Api",
Description = "Api接口文档"
}
};
/// <summary>
/// 授权配置
/// </summary>
public SimApiAuthOption ApiAuth { get; set; } = new SimApiAuthOption();
/// <summary>
/// 文档页面标题
/// </summary>
public string DocumentTitle { get; set; } = "API接口文档";
/// <summary>
/// 接口支持的调用方式
/// </summary>
public SubmitMethod[] SupportedMethod { get; set; } = new[] {SubmitMethod.Post};
}
}
+27
View File
@@ -0,0 +1,27 @@
using System;
namespace SimApi.Configs
{
public class SimApiOptions
{
public bool EnableSimApiAuth { get; set; } = false;
public bool EnableSimApiDoc { get; set; } = true;
public bool EnableSimApiException { get; set; } = true;
public bool EnableSimApiStorage { get; set; } = false;
public bool EnableForwardHeaders { get; set; } = true;
public bool EnableLowerUrl { get; set; } = true;
public SimApiDocOptions SimApiDocOptions { get; set; } = new SimApiDocOptions();
public SimApiStorageOptions SimApiStorageOptions { get; set; } = new SimApiStorageOptions();
public void ConfigureSimApiDoc(Action<SimApiDocOptions> options = null)
{
options?.Invoke(SimApiDocOptions);
}
public void ConfigureSimApiStorage(Action<SimApiStorageOptions> options = null)
{
options?.Invoke(SimApiStorageOptions);
}
}
}
+11
View File
@@ -0,0 +1,11 @@
namespace SimApi.Configs
{
public class SimApiStorageOptions
{
public string Endpoint { get; set; }
public string ServeUrl { get; set; }
public string Bucket { get; set; }
public string AccessKey { get; set; }
public string SecretKey { get; set; }
}
}