コード例 #1
0
        private async Task ProcessRequestAsync(HttpListenerContext context)
        {
            await Task.Yield();

            using (context.Response)
            {
                var utl             = _urlProcessor.Process(context.Request.Url);
                var cookieContainer = _cookieProcessor.Process(utl, context.Request.Cookies);
                using (var handler = new HttpClientHandler {
                    CookieContainer = cookieContainer
                })
                    using (var client = new HttpClient(handler))
                    {
                        var message  = context.Request.ToMessage(utl);
                        var response = await client.SendAsync(message);

                        await context.Response.CopyFromAsync(response, _responseContentProcessor);

                        context.Response.Close();
                    }
            }
        }