mirror of
https://github.com/nsnail/NetAdmin.git
synced 2025-05-02 19:12:51 +08:00
332 lines
15 KiB
JSON
332 lines
15 KiB
JSON
{
|
||
"$schema": "https://gitee.com/dotnetchina/Furion/raw/v4/schemas/v4/furion-schema.json",
|
||
// App基本配置
|
||
"AppSettings": {
|
||
// AppSettings:配置根节点
|
||
// InjectMiniProfiler:是否注入 MiniProfiler,bool 类型,默认 true,关闭 Swagger 左上角监听
|
||
// InjectSpecificationDocument:是否启用 Swagger 文档,bool 类型,默认 true,生产环境可关闭
|
||
// EnabledReferenceAssemblyScan:是否启用通过 dll 方式添加的引用程序集扫描,bool 类型,默认 false
|
||
// ExternalAssemblies:配置外部程序集完整路径,支持动态加载,string[] 类型,默认 []
|
||
// PrintDbConnectionInfo:是否打印数据库连接信息到 MiniProfiler 中,bool 类型,默认 true
|
||
// SupportPackageNamePrefixs:配置支持的包前缀名,string[] 类型,默认 []
|
||
// OutputOriginalSqlExecuteLog:是否输出原始 Sql 执行日志(ADO.NET),默认 true
|
||
// VirtualPath:配置虚拟目录,必须以 / 开头
|
||
"InjectSpecificationDocument": false,
|
||
"InjectMiniProfiler": false
|
||
},
|
||
// Swagger文档配置 ------------------------------------------------------------------------------
|
||
"SpecificationDocumentSettings": {
|
||
// DocumentTitle:文档标题,string,默认 Specification Api Document
|
||
// DefaultGroupName:默认分组名,string,默认 Default
|
||
// EnableAuthorized:是否启用权限控制,bool,默认 true
|
||
// FormatAsV2:采用 Swagger 2.0 版本,bool,默认 false 已弃用
|
||
// RoutePrefix:规范化文档地址,string,默认 api,如果希望在首页,改为空字符串即可。
|
||
// DocExpansionState:文档显示方式,DocExpansion,默认 List,取值:
|
||
// List:列表式(展开子类),默认值
|
||
// Full:完全展开
|
||
// None:列表式(不展开子类)
|
||
// XmlComments:程序集注释描述文件名(可带 .xml,string,默认 Furion.Application, Furion.Web.Entry, Furion.Web.Core
|
||
// GroupOpenApiInfos:分组信息配置,SpecificationOpenApiInfo[],默认 { 'Group': 'Default'}
|
||
// SecurityDefinitions:安全策略定义配置,SpecificationOpenApiSecurityScheme[],默认 []
|
||
// Servers:配置 Server 下拉列表,OpenApiServer[] 类型,默认 [],如:{Servers:[ { Url:"地址", Description:"描述"} ]}
|
||
// HideServers:是否隐藏 Server 下拉列表,bool 类型,默认 true
|
||
// RouteTemplate:配置文档 swagger.json 路由模板,默认模板:swagger/{documentName}/swagger.json, {documentName} 代表分组名,必须保留原样
|
||
// PackagesGroups:配置模块化内置分组名称,string[] 类型,默认 []
|
||
// EnableEnumSchemaFilter:启用枚举 Schema 筛选器,bool 类型,默认 true
|
||
// EnableTagsOrderDocumentFilter:启用标签排序筛选器,bool 类型,默认 true
|
||
// ServerDir:配置 IIS 添加 Application 部署名,string 类型,默认空,仅在 Furion v3.2.0+` 有效
|
||
// LoginInfo:配置 Swagger 是否需要登录才能访问,SpecificationLoginInfo 类型,默认 null,仅在 Furion v3.3.3+` 有效
|
||
// Enabled:是否启用登录授权,默认 false
|
||
// CheckUrl:检查登录状态的 Url 地址,该地址必须是 POST 请求,已授权返回 200,否则返回 401
|
||
// SubmitUrl:提交登录的 Url 地址,该地址必须是 POST 请求且只有一个 SpecificationAuth 类型参数,成功登录返回 200,否则返回 401,支持相对地址,以 / 开头
|
||
// EnableAllGroups:启用 Swagger 总分组功能,自动将所有分组的接口合并到 All Groups 中,bool 类型,默认 false,仅在 Furion v3.3.4+` 有效
|
||
// 另外 SpecificationOpenApiInfo 内置配置如下:
|
||
//
|
||
// Group:分组唯一标识,string 类型,必填
|
||
// Order:分组排序,int 类型,数字越大排前面,默认 0
|
||
// Visible:配置分组是否可见,bool 类型,默认 true
|
||
// Title:配置分组标题,string 类型
|
||
// Description:配置分组描述,string 类型
|
||
// Version:配置分组版本,默认 1.0
|
||
// TermsOfService:配置相关链接地址,Uri 类型
|
||
// Contact:配置联系方式,OpenApiContact 类型
|
||
// License:配置协议,OpenApiLicense 类型
|
||
"EnableEnumSchemaFilter": false,
|
||
"EnableAuthorized": false,
|
||
"RoutePrefix": "swagger",
|
||
"XmlComments": [
|
||
"FreeSql.xml",
|
||
"NetAdmin.AdmServer.Application.xml",
|
||
"NetAdmin.AdmServer.Cache.xml",
|
||
"NetAdmin.AdmServer.Host.xml",
|
||
"NetAdmin.Application.xml",
|
||
"NetAdmin.Cache.xml",
|
||
"NetAdmin.Domain.xml",
|
||
"NetAdmin.Host.xml",
|
||
"NetAdmin.Infrastructure.xml",
|
||
"NetAdmin.ScheduledService.xml",
|
||
"NetAdmin.SysComponent.Application.xml",
|
||
"NetAdmin.SysComponent.Cache.xml",
|
||
"NetAdmin.SysComponent.Host.xml",
|
||
]
|
||
},
|
||
// 验证码配置 --------------------------------------------------------------------------------------------------------
|
||
"Captcha": {
|
||
"ImageRelativePath": ".data/captcha",
|
||
"SecretKey": "1Z?f(2)%v?:X5NYRl+]PSi.rDf7Ip#lB"
|
||
},
|
||
// 跨域配置 ----------------------------------------------------------------------------------------------------------
|
||
"CorsAccessorSettings": {
|
||
// CorsAccessorSettings
|
||
// PolicyName:跨域策略名,string 类型,必填,默认 App.Cors.Policy
|
||
// WithOrigins:允许跨域的域名列表,string[] 类型,默认 *
|
||
// WithHeaders:请求表头,没有配置则允许所有表头,string[] 类型
|
||
// WithExposedHeaders:设置客户端可获取的响应标头,string[] 类型,默认 ["access-token", "x-access-token"]
|
||
// WithMethods:设置跨域允许请求谓词,没有配置则允许所有,string[] 类型
|
||
// AllowCredentials:是否允许跨域请求中的凭据,bool 类型,默认值 true
|
||
// SetPreflightMaxAge:设置预检过期时间,int 类型,默认值 24小时
|
||
// FixedClientToken:是否默认配置 WithExposedHeaders,bool 类型,默认 true
|
||
// SignalRSupport:是否启用 SignalR 跨域支持,bool 类型,默认 false
|
||
"WithExposedHeaders": [
|
||
"access-token",
|
||
"x-access-token",
|
||
"content-disposition"
|
||
]
|
||
},
|
||
// 数据库配置 --------------------------------------------------------------------------------------------------------
|
||
"Database": {
|
||
"DbType": "Sqlite",
|
||
"ConnStr": "data source=NetAdmin.db",
|
||
"SeedDataRelativePath": "SeedData"
|
||
},
|
||
// 动态webapi配置 ----------------------------------------------------------------------------------------------------
|
||
"DynamicApiControllerSettings": {
|
||
// 5.1.10 DynamicApiControllerSettings 配置
|
||
// Furion 还提供动态 WebAPI 接口一些全局配置选项,如:
|
||
//
|
||
// DefaultRoutePrefix:默认路由前缀,string,默认 api
|
||
// DefaultHttpMethod:默认请求谓词,string,默认:POST
|
||
// DefaultModule:默认模块名称(区域),可用作接口版本,string,默认:v1
|
||
// LowercaseRoute:小写路由格式,bool,默认:true
|
||
// AsLowerCamelCase:启用小驼峰命名(首字母小写),默认 false
|
||
// KeepVerb:是否保留动作谓词,bool,默认:false
|
||
// KeepName:是否保留默认名称,bool,默认:fasle
|
||
// CamelCaseSeparator:骆驼(驼峰)/帕斯卡命名分隔符,string,默认:-
|
||
// VersionSeparator:版本分隔符,string,默认:@
|
||
// ModelToQuery:GET/HEAD 请求将 类类型参数转查询参数,bool,默认 false
|
||
// SupportedMvcController:是否支持 Mvc Controller 动态配置,bool,默认 false
|
||
// UrlParameterization:路由参数采用 [FromQuery] 化,默认 false([FromRoute] 方式)
|
||
// DefaultArea:配置默认区域,默认 null
|
||
// ForceWithRoutePrefix:配置是否强制添加 DefaultRoutePrefix,当控制器自定义了 [Route] 有效,仅限 v3.4.1+版本有效
|
||
// AbandonControllerAffixes:默认去除控制器名称前后缀列表名,string[],默认:
|
||
// AppServices
|
||
// AppService
|
||
// ApiController
|
||
// Controller
|
||
// Services
|
||
// Service
|
||
// AbandonActionAffixes:默认去除动作方法名称前后缀列表名,string[],默认:
|
||
// Async
|
||
// VerbToHttpMethods:复写默认方法名转 [HttpMethod] 规则,string[][] 二维数组类型,内置匹配规则为:
|
||
// ["post"] = "POST",
|
||
// ["add"] = "POST",
|
||
// ["create"] = "POST",
|
||
// ["insert"] = "POST",
|
||
// ["submit"] = "POST",
|
||
// ["get"] = "GET",
|
||
// ["find"] = "GET",
|
||
// ["fetch"] = "GET",
|
||
// ["query"] = "GET",
|
||
// ["getlist"] = "GET",
|
||
// ["getall"] = "GET",
|
||
// ["put"] = "PUT",
|
||
// ["update"] = "PUT",
|
||
// ["delete"] = "DELETE",
|
||
// ["remove"] = "DELETE",
|
||
// ["clear"] = "DELETE",
|
||
// ["patch"] = "PATCH"
|
||
//
|
||
// 复写示例
|
||
// "DynamicApiControllerSettings": {
|
||
// "VerbToHttpMethods": [
|
||
// [ "getall", "HEAD" ], // => getall 会被复写为 `[HttpHead]`
|
||
// [ "other", "PUT" ] // => 新增一条新规则,比如,一 `[other]` 开头会转换为 `[HttpPut]` 请求
|
||
// ]
|
||
// }
|
||
// "DefaultRoutePrefix": "rest",
|
||
"VerbToHttpMethods": [
|
||
[
|
||
"post",
|
||
"POST"
|
||
],
|
||
[
|
||
"add",
|
||
"POST"
|
||
],
|
||
[
|
||
"create",
|
||
"POST"
|
||
],
|
||
[
|
||
"insert",
|
||
"POST"
|
||
],
|
||
[
|
||
"submit",
|
||
"POST"
|
||
],
|
||
[
|
||
"get",
|
||
"POST"
|
||
],
|
||
[
|
||
"find",
|
||
"POST"
|
||
],
|
||
[
|
||
"fetch",
|
||
"POST"
|
||
],
|
||
[
|
||
"query",
|
||
"POST"
|
||
],
|
||
[
|
||
"getlist",
|
||
"POST"
|
||
],
|
||
[
|
||
"getall",
|
||
"POST"
|
||
],
|
||
[
|
||
"put",
|
||
"POST"
|
||
],
|
||
[
|
||
"update",
|
||
"POST"
|
||
],
|
||
[
|
||
"delete",
|
||
"POST"
|
||
],
|
||
[
|
||
"remove",
|
||
"POST"
|
||
],
|
||
[
|
||
"clear",
|
||
"POST"
|
||
],
|
||
[
|
||
"patch",
|
||
"POST"
|
||
]
|
||
],
|
||
"CamelCaseSeparator": ".",
|
||
"UrlParameterization": true,
|
||
"KeepVerb": true,
|
||
"AbandonControllerAffixes": [
|
||
"Controller"
|
||
],
|
||
},
|
||
// 友好异常配置 -------------------------------------------------------------------------------------------------------
|
||
"FriendlyExceptionSettings": {
|
||
// 7.15 FriendlyExceptionSettings 配置
|
||
// HideErrorCode:隐藏错误码,bool 类型,默认 false
|
||
// DefaultErrorCode:默认错误码,string 类型
|
||
// DefaultErrorMessage:默认错误消息,string 类型
|
||
// ThrowBah:是否将 Oops.Oh 默认抛出为业务异常,bool 类型,默认 false,设置 true 之后 Oops.Oh 默认进入 OnValidateFailed 处理,而不是 OnException
|
||
// LogError:是否输出异常日志,bool 类型,默认 true
|
||
"LogError": false
|
||
},
|
||
// JWT鉴权配置 -------------------------------------------------------------------------------------------------------
|
||
"JWTSettings": {
|
||
"ValidateIssuerSigningKey": true,
|
||
// 是否验证密钥,bool 类型,默认true
|
||
"IssuerSigningKey": "bO0BCAGxpxYnm6AE4XpgO25T27NayFzjGgfDqBuzUzD6ROpFiZUi3KjVg93bdGek",
|
||
// 密钥,string 类型,必须是复杂密钥,长度大于16
|
||
"ValidateIssuer": true,
|
||
// 是否验证签发方,bool 类型,默认true
|
||
"ValidIssuer": "签发方",
|
||
// 签发方,string 类型
|
||
"ValidateAudience": true,
|
||
// 是否验证签收方,bool 类型,默认true
|
||
"ValidAudience": "签收方",
|
||
// 签收方,string 类型
|
||
"ValidateLifetime": true,
|
||
// 是否验证过期时间,bool 类型,默认true,建议true
|
||
"ExpiredTime": 20,
|
||
// 过期时间,long 类型,单位分钟,默认20分钟
|
||
"ClockSkew": 5,
|
||
// 过期时间容错值,long 类型,单位秒,默认 5秒
|
||
"Algorithm": "HS256"
|
||
// 加密算法,string 类型,默认 HS256
|
||
},
|
||
// 日志配置 ----------------------------------------------------------------------------------------------------------
|
||
"Logging": {
|
||
"LogLevel": {
|
||
"Default": "Information",
|
||
"Microsoft.AspNetCore": "Warning",
|
||
"System.Logging.EventBusService": "Error"
|
||
},
|
||
"Monitor": {
|
||
"GlobalEnabled": false,
|
||
// 是否启用全局拦截,默认 `false`
|
||
// "IncludeOfMethods": [], // 是否指定拦截特定方法,当 GlobalEnabled: false 有效
|
||
// "ExcludeOfMethods": [], // 是否指定排除特定方法,当 GlobalEnabled: true 有效
|
||
// "BahLogLevel": "Information", // 配置 Oops.Oh 和 Oops.Bah 业务日志输出级别,默认 Information
|
||
// "WithReturnValue": true, // 配置是否包含返回值,默认 `true`,Furion 4.3.9+ 有效
|
||
"ReturnValueThreshold": 1000
|
||
// 配置返回值字符串阈值,默认 0,全量输出,Furion 4.3.9+ 有效
|
||
// "JsonBehavior": "None", // 配置 LoggingMonitor Json 输出行为,默认 None,Furion 4.5.2+ 有效
|
||
// "MethodsSettings": [
|
||
// // 配置被监视方法更多信息,Furion 4.3.9+ 有效
|
||
// {
|
||
// "FullName": "Furion.Application.TestLoggerServices.MethodName", // 方法完全限定名
|
||
// "WithReturnValue": true, // 配置是否包含返回值,默认 `true`,Furion 4.3.9+ 有效
|
||
// "ReturnValueThreshold": 0 // 配置返回值字符串阈值,默认 0,全量输出,Furion 4.3.9+ 有效
|
||
// }
|
||
// ]
|
||
}
|
||
},
|
||
// Redis配置 --------------------------------------------------------------------------------------------------------
|
||
"Redis": {
|
||
"Instances": [
|
||
// 数据缓存
|
||
{
|
||
"Name": "DataCache",
|
||
"ConnStr": "localhost:6379,abortConnect=false",
|
||
"DataBase": 0,
|
||
}
|
||
]
|
||
},
|
||
// UnifyResultSettings 规范化配置 ------------------------------------------------------------------------------------
|
||
"UnifyResultSettings": {
|
||
// Return200StatusCodes:配置返回 200 状态码的请求,int[] 类型,只支持 400+(404除外) 状态码篡改
|
||
// AdaptStatusCodes:配置篡改状态码规则,int[][] 类型,只支持 400+(404除外) 状态码篡改
|
||
// SupportMvcController:是否支持 MVC 控制台规范化处理,bool 类型,默认 false
|
||
"Return200StatusCodes": [
|
||
999
|
||
],
|
||
},
|
||
// 文件上传配置 -------------------------------------------------------------------------------------------------------
|
||
"Upload": {
|
||
"ContentTypes": [
|
||
"image/jpg",
|
||
"image/png",
|
||
"image/jpeg",
|
||
"image/gif"
|
||
],
|
||
"MaxSize": 1073741824,
|
||
"Minio": {
|
||
"ServerAddress": "vm-ubt-1:9000",
|
||
"AccessKey": "nVMM0gSqwyIjM8iZ",
|
||
"SecretKey": "F8OZngGrNsZSYn4MP9swwMSf5rfm61EC",
|
||
"BucketName": "net-admin",
|
||
"AccessUrl": "http://vm-ubt-1:9000",
|
||
"Secure": false,
|
||
}
|
||
},
|
||
} |