Files
juipnet/Services/Hncore.Pass.OSS/Startup.cs
“wanyongkang” b562aba2b1 忽略dll文件git
2023-07-29 10:19:42 +08:00

63 lines
2.1 KiB
C#

using Hncore.Infrastructure.Service;
using Hncore.Infrastructure.WebApi;
using Hncore.Pass.Oss.Map;
using Hncore.Pass.OSS.Domain;
using Hncore.Pass.OSS.Utils;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.FileProviders;
using Microsoft.Extensions.Logging;
using System;
using System.IO;
using UEditor.Core;
namespace Hncore.Pass.OSS
{
public class Startup
{
public IConfiguration Configuration { get; }
public Startup(IHostingEnvironment env)
{
Configuration = env.UseAppsettings();
}
public IServiceProvider ConfigureServices(IServiceCollection services)
{
services.AddDbContext<CourseContext>(opt => { opt.UseMySql(Configuration["MySql"]); });
services.AddUEditorService();
services.AddHttpClient();
services.AutoAddService();
services.AddAliOssClient(Configuration["Aliyun:Oss:AliEndpoint"], Configuration["Aliyun:Oss:AliAccessId"], Configuration["Aliyun:Oss:AliAccessKey"]);
return services.Init(Configuration, CompatibilityVersion.Version_2_2, new ServiceOption
{
UseGlobalManageAuthFilter = false,
});
}
public void Configure(IApplicationBuilder app, IApplicationLifetime applicationLifetime,
ILoggerFactory loggerFactory)
{
app.UseStaticFiles();
app.UseStaticFiles(new StaticFileOptions
{
FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), "upload")),
RequestPath = "/upload",
OnPrepareResponse = ctx =>
{
ctx.Context.Response.Headers.Append("Cache-Control", "public,max-age=36000");
}
});
app.Init(loggerFactory, applicationLifetime);
MapConfig.Config();
}
}
}