private async Task <Response> BuildResponse() { Response response = null; var originalBodyStream = _context.Response.Body; using (var responseBody = new MemoryStream()) { _context.Response.Body = responseBody; await _next.Invoke(_context); string responseBodyData = await ProcessResponseBody(_context); _context.Response.Headers.Add("x-documentation-url", _configValues.options.baseLogUrl + "/logs/" + guid); ResponseProcessor responseProcessor = new ResponseProcessor(_context.Response, responseBodyData, _configValues); response = responseProcessor.ProcessResponse(); await responseBody.CopyToAsync(originalBodyStream); } return(response); }