public async Task InvokeAsync(HttpContext httpContext) { ErrorWrapper Wrapper = new ErrorWrapper(); ErrorResponse errorResponse = new ErrorResponse(); Error error = new Error(); httpContext.Response.ContentType = MediaTypeNames.Application.Json; await _next(httpContext); switch (httpContext.Response.StatusCode) { case StatusCodes.Status415UnsupportedMediaType: error = new Error("415", "Hi I am a 415 HTTP Error :)"); errorResponse.errors.Add(error); Wrapper.response = errorResponse; await httpContext.Response.WriteAsync(Wrapper.ToString()); Wrapper.response.errors.Clear(); break; case StatusCodes.Status401Unauthorized: error = new Error("401", "Hi I am a 401 HTTP Error :)"); errorResponse.errors.Add(error); Wrapper.response = errorResponse; await httpContext.Response.WriteAsync(Wrapper.ToString()); Wrapper.response.errors.Clear(); break; } }