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;
        }
Пример #2
0
            public ResponseSummary(Response response)
            {
                _contentType = response.ContentType;
                _headers = response.Headers;
                _statusCode = response.StatusCode;

                using (var memoryStream = new MemoryStream())
                {
                    response.Contents(memoryStream);
                    _contents = memoryStream.ToArray();
                }
            }
Пример #3
0
        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;
 }