namespace CloudGaming.Shared;
///
/// 共享库 启动器
///
public class SharedStartup : StartupModule
{
///
///
///
///
public override void ConfigureServices(WebApplicationBuilder webApplicationBuilder)
{
var services = webApplicationBuilder.Services;
//var configuration = webApplicationBuilder.Configuration;
// 本地消息队列
services.AddMemoryMQ();
// 加入文件浏览器
services.AddDirectoryBrowser();
#region 上传文件最大长度
//services.Configure(options =>
//{
// options.Limits.MaxRequestBodySize = appConfiguration.Configs.FileManager.GetMaxRequestBodySize();
//});
//services.Configure(options =>
//{
// options.MultipartBodyLengthLimit = appConfiguration.Configs.FileManager.GetMaxRequestBodySize();
//});
#endregion
}
///
///
///
///
public override void Configure(WebApplication webApplication)
{
// 消息队列启动
webApplication.UseMemoryMQ();
#region 日志文件浏览器配置
var provider = new FileExtensionContentTypeProvider();
//添加之后能够识别.log
provider.Mappings[".log"] = "text/plain;charset=utf-8";
webApplication.UseStaticFiles(new StaticFileOptions
{
FileProvider = new PhysicalFileProvider(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "AppLogs")),
RequestPath = "/logs",
ServeUnknownFileTypes = true,
ContentTypeProvider = provider
});
webApplication.UseFileServer(new FileServerOptions
{
FileProvider = new PhysicalFileProvider(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "AppLogs")),
RequestPath = "/logs",
EnableDirectoryBrowsing = true,
});
#endregion
}
}