예제 #1
0
        public static void DebugPrintResponse(HttpServer.IHttpResponse response)
        {
            // TODO this should be precomputed a single time and reused
            var f = response.GetType().GetField("_headers", BindingFlags.Instance | BindingFlags.NonPublic);

            var headers = (NameValueCollection)f.GetValue(response);

            Console.WriteLine(response.ProtocolVersion + " " + response.Status.ToString());
            Console.WriteLine(response.ContentType);
            foreach (string headerKey in headers.Keys)
            {
                Console.WriteLine(headerKey + ": " + headers[headerKey]);
            }
            Console.WriteLine("-----------------------------");
        }
예제 #2
0
        public static IHttpClientContext GetContext(HttpServer.IHttpResponse response)
        {
            var f = response.GetType().GetField("_context", BindingFlags.Instance | BindingFlags.NonPublic);

            return((IHttpClientContext)f.GetValue(response));
        }