云端部署方案落地

This commit is contained in:
2026-07-03 17:29:41 +08:00
parent a05cf2f333
commit ac1153c091
21 changed files with 490 additions and 317 deletions
+15 -1
View File
@@ -2,7 +2,7 @@ using MtApi5;
using System.Reflection;
var builder = WebApplication.CreateBuilder(args);
builder.WebHost.UseUrls("http://localhost:8080");
builder.WebHost.UseUrls("http://0.0.0.0:8080");
builder.Services.AddSingleton<MtApi5Client>(sp =>
{
var client = new MtApi5Client();
@@ -30,6 +30,20 @@ builder.Services.AddSingleton<MtApi5Client>(sp =>
builder.Services.AddHostedService<MtConnectionService>();
var app = builder.Build();
// API Key 认证
const string API_KEY = "UiHMqtaYLZzwBdcuS4RFmEGhgDO8N2eI";
app.Use(async (context, next) =>
{
var key = context.Request.Headers["X-API-Key"].FirstOrDefault();
if (key != API_KEY)
{
context.Response.StatusCode = 401;
await context.Response.WriteAsync("Unauthorized");
return;
}
await next();
});
app.MapGet("/health", (MtApi5Client mt) =>
{
var connected = mt.ConnectionState == Mt5ConnectionState.Connected;