private string ReadResponseContent(Response response) { string content; using (var stream = new MemoryStream()) { response.Contents(stream); stream.Position = 0; using (var reader = new StreamReader(stream)) { content = reader.ReadToEnd(); } } return content; }
public ResponseSummary(Response response) { _contentType = response.ContentType; _headers = response.Headers; _statusCode = response.StatusCode; using (var memoryStream = new MemoryStream()) { response.Contents(memoryStream); _contents = memoryStream.ToArray(); } }
static void SendNancyResponseToResult(Response response, ResultDelegate result) { if (!response.Headers.ContainsKey("Content-Type") && !string.IsNullOrWhiteSpace(response.ContentType)) response.Headers["Content-Type"] = response.ContentType; result( string.Format("{0:000} UNK", (int) response.StatusCode), response.Headers, (next, error, complete) => { using (var stream = new OutputStream(next, complete)) { try { response.Contents(stream); } catch (Exception ex) { error(ex); } } return () => { }; }); }
private HttpResponseMessage MapNancyResponse(Response src) { var dst = new HttpResponseMessage((HttpStatusCode)src.StatusCode); if (src.Contents != null) { using (var memStream = new MemoryStream()) { src.Contents(memStream); dst.Content = new ByteArrayContent(memStream.ToArray()); } foreach (var header in src.Headers) { if (contentHeaders.Contains(header.Key)) dst.Content.Headers.Add(header.Key, header.Value); } if (src.ContentType != null) dst.Content.Headers.ContentType = MediaTypeHeaderValue.Parse(src.ContentType); } foreach (var header in src.Headers.Where(x => !contentHeaders.Contains(x.Key))) dst.Headers.Add(header.Key, header.Value); return dst; }