public ProxyMiddleware( RequestDelegate next, IOptions <DriverApplicationSettings> driverAppSettings, IOptions <ProxySettings> proxySettings, ILogger <ProxyMiddleware> logger) { _next = next; _driverAppSettings = driverAppSettings?.Value ?? throw new ArgumentException(nameof(DriverApplicationSettings)); _proxySettings = proxySettings?.Value ?? throw new ArgumentException(nameof(ProxySettings)); _logger = logger ?? throw new ArgumentException(nameof(ILogger <ProxyMiddleware>)); }
public static async Task ProcessRequest(HttpContext context, DriverApplicationSettings settings) { using (HttpClient client = new HttpClient()) { try { var url = "http://localhost:" + settings.Port + context.Request.Path.Value; HttpResponseMessage response = await client.GetAsync(url); context.Response.StatusCode = 200; context.Response.ContentType = "application/json"; await context.Response.WriteAsync(await response.Content.ReadAsStringAsync()); } catch (Exception e) { var a = e; var b = e.Message; } } }