OneDrive Backup
OneDrive Backup
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
using hassio_onedrive_backup;
|
||||
using Microsoft.Extensions.Primitives;
|
||||
using onedrive_backup.Hass;
|
||||
|
||||
namespace onedrive_backup.Middleware
|
||||
{
|
||||
public class ExtractHassUrlMiddleware
|
||||
{
|
||||
private readonly RequestDelegate _next;
|
||||
private HassContext _ingressSettings;
|
||||
private IHostEnvironment _env;
|
||||
|
||||
public ExtractHassUrlMiddleware(RequestDelegate next, HassContext ingressSettings, IHostEnvironment env)
|
||||
{
|
||||
_next = next;
|
||||
_ingressSettings = ingressSettings;
|
||||
_env = env;
|
||||
}
|
||||
|
||||
public async Task InvokeAsync(HttpContext context)
|
||||
{
|
||||
const string HeaderKeyName = "X-Ingress-Path";
|
||||
if (context.Request.Headers.TryGetValue(HeaderKeyName, out StringValues headerValue))
|
||||
{
|
||||
_ingressSettings.HeaderIngressPath = headerValue.ToString();
|
||||
ConsoleLogger.LogInfo($"X-Ingress-Path: {_ingressSettings.HeaderIngressPath}");
|
||||
}
|
||||
else if (_env.IsDevelopment())
|
||||
{
|
||||
_ingressSettings.HeaderIngressPath = "/";
|
||||
}
|
||||
|
||||
await _next(context);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user