feat: swagger集成租户header

This commit is contained in:
陈淳
2024-01-22 11:12:50 +08:00
parent 56785f96a9
commit fac6f04943
7 changed files with 22 additions and 3 deletions

View File

@@ -80,7 +80,7 @@ namespace Yi.Framework.AspNetCore.Microsoft.Extensions.DependencyInjection
[scheme] = new string[0]
});
options.OperationFilter<AddRequiredHeaderParameter>();
options.SchemaFilter<EnumSchemaFilter>();
}
);
@@ -134,4 +134,23 @@ namespace Yi.Framework.AspNetCore.Microsoft.Extensions.DependencyInjection
}
}
public class AddRequiredHeaderParameter : IOperationFilter
{
public static string HeaderKey { get; set; } = "__tenant";
public void Apply(OpenApiOperation operation, OperationFilterContext context)
{
if (operation.Parameters == null)
operation.Parameters = new List<OpenApiParameter>();
operation.Parameters.Add(new OpenApiParameter
{
Name = HeaderKey,
In = ParameterLocation.Header,
Required = false,
AllowEmptyValue = true,
Description="租户id或者租户名称可空为默认租户"
});
}
}
}