upd
This commit is contained in:
parent
373c5aca6e
commit
9f75b8b906
@ -10,7 +10,7 @@
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\InterfaceForward.Application\InterfaceForward.Application.csproj" />
|
||||
<ProjectReference Include="..\InterfaceForward.ServiceDefaults\InterfaceForward.ServiceDefaults.csproj"/>
|
||||
<PackageReference Include="Fake.Autofac" Version="8.0.0-preview17" />
|
||||
<PackageReference Include="Fake.Autofac" Version="8.0.0-preview18" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="8.0.18" />
|
||||
<PackageReference Include="Serilog.AspNetCore" Version="9.0.0" />
|
||||
<PackageReference Include="Serilog.Sinks.Elasticsearch" Version="10.0.0" />
|
||||
|
||||
@ -6,8 +6,12 @@ using Fake.Autofac;
|
||||
using Fake.Modularity;
|
||||
using InterfaceForward.Application;
|
||||
using InterfaceForward.Application.Filters;
|
||||
using InterfaceForward.Domain.Shared;
|
||||
using InterfaceForward.Domain.Shared.Helpers;
|
||||
using Microsoft.AspNetCore.HttpOverrides;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Microsoft.OpenApi.Models;
|
||||
using Swashbuckle.AspNetCore.SwaggerGen;
|
||||
|
||||
namespace InterfaceForward.Api;
|
||||
|
||||
@ -36,12 +40,35 @@ public class InterfaceForwardApiModule : FakeModule
|
||||
{
|
||||
options.SerializerSettings.ContractResolver =
|
||||
new Newtonsoft.Json.Serialization.
|
||||
CamelCasePropertyNamesContractResolver(); //.DefaultContractResolver();
|
||||
CamelCasePropertyNamesContractResolver(); // 首字母小写(驼峰样式)
|
||||
options.SerializerSettings.Converters.Add(new DateTimeJsonConverter("yyyy-MM-dd HH:mm:ss"));
|
||||
options.SerializerSettings.Converters.Add(new LongJsonConverter());
|
||||
});
|
||||
|
||||
services.AddFakeSwaggerGen()
|
||||
services.AddFakeSwaggerGen(options =>
|
||||
{
|
||||
options.AddSecurityDefinition("Bearer", new OpenApiSecurityScheme()
|
||||
{
|
||||
Description = "JWT授权数据将在请求头中进行传输,在下方输入Bearer {token} 即可,注意两者之间有空格",
|
||||
Name = "Authorization",
|
||||
In = ParameterLocation.Header,
|
||||
Type = SecuritySchemeType.ApiKey
|
||||
});
|
||||
options.AddSecurityRequirement(new OpenApiSecurityRequirement
|
||||
{
|
||||
{
|
||||
new OpenApiSecurityScheme
|
||||
{
|
||||
Reference = new OpenApiReference()
|
||||
{
|
||||
Id = "Bearer",
|
||||
Type = ReferenceType.SecurityScheme
|
||||
}
|
||||
},
|
||||
[]
|
||||
}
|
||||
});
|
||||
})
|
||||
.AddFakeExceptionFilter()
|
||||
.AddFakeValidationActionFilter()
|
||||
.AddFakeAspNetCoreAuditing()
|
||||
@ -57,6 +84,15 @@ public class InterfaceForwardApiModule : FakeModule
|
||||
.AllowCredentials();
|
||||
});
|
||||
});
|
||||
|
||||
//Nginx代理的话获取真实IP
|
||||
services.Configure<ForwardedHeadersOptions>(options =>
|
||||
{
|
||||
options.ForwardedHeaders = ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto;
|
||||
//新增如下两行
|
||||
options.KnownNetworks.Clear();
|
||||
options.KnownProxies.Clear();
|
||||
});
|
||||
}
|
||||
|
||||
public override void ConfigureApplication(ApplicationConfigureContext context)
|
||||
@ -73,7 +109,7 @@ public class InterfaceForwardApiModule : FakeModule
|
||||
|
||||
// Add Aspire default endpoints.
|
||||
app.MapDefaultEndpoints();
|
||||
app.MapControllers();
|
||||
|
||||
// Configure the HTTP request pipeline.
|
||||
app.UseFakeSwagger();
|
||||
|
||||
@ -81,6 +117,12 @@ public class InterfaceForwardApiModule : FakeModule
|
||||
|
||||
app.UseCors(DefaultCorsPolicyName);
|
||||
|
||||
app.UseAuthentication();
|
||||
app.UseAuthorization();
|
||||
app.UseForwardedHeaders();//Nginx代理的话获取真实IP
|
||||
|
||||
app.MapControllers();
|
||||
|
||||
LogHelper.Info("Application started", true);
|
||||
}
|
||||
|
||||
|
||||
@ -17,9 +17,9 @@
|
||||
<PackageReference Include="DiffPlex" Version="1.7.2" />
|
||||
<PackageReference Include="Aliyun.OSS.SDK.NetCore" Version="2.14.1" />
|
||||
<PackageReference Include="DotNetCore.Natasha.CSharp" Version="5.2.2.1"/>
|
||||
<PackageReference Include="Fake.AspNetCore" Version="8.0.0-preview17" />
|
||||
<PackageReference Include="Fake.EventBus.RabbitMQ" Version="8.0.0-preview17" />
|
||||
<PackageReference Include="Fake.ObjectMapping.AutoMapper" Version="8.0.0-preview17" />
|
||||
<PackageReference Include="Fake.AspNetCore" Version="8.0.0-preview18" />
|
||||
<PackageReference Include="Fake.EventBus.RabbitMQ" Version="8.0.0-preview18" />
|
||||
<PackageReference Include="Fake.ObjectMapping.AutoMapper" Version="8.0.0-preview18" />
|
||||
<PackageReference Include="FreeRedis" Version="1.3.6" />
|
||||
</ItemGroup>
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace InterfaceForward.Api;
|
||||
namespace InterfaceForward.Domain.Shared;
|
||||
|
||||
public class DateTimeJsonConverter: JsonConverter
|
||||
{
|
||||
@ -11,6 +11,6 @@
|
||||
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Fake.DomainDrivenDesign" Version="8.0.0-preview17" />
|
||||
<PackageReference Include="Fake.DomainDrivenDesign" Version="8.0.0-preview18" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace InterfaceForward.Api;
|
||||
namespace InterfaceForward.Domain.Shared;
|
||||
|
||||
public class LongJsonConverter : JsonConverter
|
||||
{
|
||||
@ -7,7 +7,7 @@
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Fake.SqlSugarCore" Version="8.0.0-preview17" />
|
||||
<PackageReference Include="Fake.SqlSugarCore" Version="8.0.0-preview18" />
|
||||
<PackageReference Include="NEST" Version="7.17.5" />
|
||||
</ItemGroup>
|
||||
|
||||
|
||||
@ -1,5 +1,7 @@
|
||||
using InterfaceForward.Repositories.Log.ES;
|
||||
using InterfaceForward.Domain.Shared;
|
||||
using InterfaceForward.Repositories.Log.ES;
|
||||
using Nest;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace InterfaceForward.Repositories.Log.Entitys;
|
||||
|
||||
@ -14,6 +16,7 @@ public class LogIndex : IdBaseIndex
|
||||
///<summary>
|
||||
/// 请求时间
|
||||
///</summary>
|
||||
[JsonConverter(typeof(DateTimeJsonConverter), "yyyy-MM-dd HH:mm:ss fff")]
|
||||
public DateTime RequestTime { get; set; }
|
||||
|
||||
///<summary>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user