Startup.cs 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. using Furion;
  2. using Furion.UnifyResult;
  3. using gpt_api.Web.Core.Filters;
  4. using gpt_api.Web.Core.Setup;
  5. using Microsoft.AspNetCore.Builder;
  6. using Microsoft.AspNetCore.Hosting;
  7. using Microsoft.AspNetCore.Mvc;
  8. using Microsoft.Extensions.DependencyInjection;
  9. using Microsoft.Extensions.Hosting;
  10. namespace gpt_api.Web.Core;
  11. public class Startup : AppStartup
  12. {
  13. public void ConfigureServices(IServiceCollection services)
  14. {
  15. services.AddConsoleFormatter();
  16. // services.AddJwt<JwtHandler>(enableGlobalAuthorize: true); ;
  17. services.AddJwt<JwtHandler>();
  18. services.AddCorsAccessor();
  19. services.AddControllersWithViews()
  20. .AddNewtonsoftJson(options =>
  21. {
  22. options.SerializerSettings.DateFormatString = "yyyy-MM-dd HH:mm:ss";
  23. });
  24. services.AddControllers()
  25. .AddInjectWithUnifyResult<RESTfulResultProvider>();
  26. //日志配置
  27. services.AddLogSetup();
  28. //去除入参string前后空格
  29. services.Configure<MvcOptions>(options =>
  30. {
  31. options.Filters.Add<TrimInputActionFilter>();
  32. });
  33. //sqlsugar数据库配置
  34. services.AddSqlsugarSetup(App.Configuration["ConnectionStrings:BaseNetDB"]);
  35. //添加事件总线
  36. services.AddEventBus();
  37. }
  38. public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
  39. {
  40. if (env.IsDevelopment())
  41. {
  42. app.UseDeveloperExceptionPage();
  43. }
  44. app.UseHttpsRedirection();
  45. app.UseRouting();
  46. app.UseCorsAccessor();
  47. app.UseAuthentication();
  48. app.UseAuthorization();
  49. app.UseInject(string.Empty);
  50. app.UseEndpoints(endpoints =>
  51. {
  52. endpoints.MapControllers();
  53. });
  54. }
  55. }