Exemplo n.º 1
0
        public void Index()
        {
            HttpRequest  request  = System.Web.HttpContext.Current.Request;
            HttpResponse response = System.Web.HttpContext.Current.Response;

            if (request.Headers["If-Modified-Since"] != null)
            {
                response.StatusCode = (int)HttpStatusCode.NotModified;
                return;
            }
            if (request.Params[ProxyBase.REWRITE_MIME_TYPE_PARAM] != null)
            {
                response.ContentType = request.Params[ProxyBase.REWRITE_MIME_TYPE_PARAM];
            }
            if (request.Params[ProxyBase.REFRESH_PARAM] != null)
            {
                int ttl = 0;
                int.TryParse(request.Params[ProxyBase.REFRESH_PARAM], out ttl);
                HttpUtil.SetCachingHeaders(response, ttl);
            }
            response.AddHeader("Content-Disposition", "attachment;filename=p.txt");
            HttpResponseWrapper wrapper = new HttpResponseWrapper(response);

            for (int i = 1; i < int.MaxValue; i++)
            {
                string url = request.Params[i.ToString()];
                if (url == null)
                {
                    break;
                }

                try
                {
                    wrapper.Write(Encoding.UTF8.GetBytes("/* ---- Start " + url + " ---- */"));
                    proxyHandler.Fetch(new RequestWrapper(System.Web.HttpContext.Current, url, true), wrapper);
                    if (wrapper.getStatus() != (int)HttpStatusCode.OK)
                    {
                        wrapper.Write(Encoding.UTF8.GetBytes(
                                          formatHttpError(wrapper.getStatus(), wrapper.getErrorMessage())));
                    }

                    wrapper.Write(Encoding.UTF8.GetBytes("/* ---- End " + url + " ---- */"));
                }
                catch (GadgetException ge)
                {
                    if (ge.getCode() != GadgetException.Code.FAILED_TO_RETRIEVE_CONTENT)
                    {
                        outputError(ge, url, response);
                        return;
                    }
                    else
                    {
                        wrapper.Write(Encoding.UTF8.GetBytes("/* ---- End " + url + " 404 ---- */"));
                    }
                }
            }
            response.End();
        }
Exemplo n.º 2
0
        public void Index()
        {
            HttpRequest request = System.Web.HttpContext.Current.Request;
            HttpResponse response = System.Web.HttpContext.Current.Response;
            if (request.Headers["If-Modified-Since"] != null)
            {
                response.StatusCode = (int)HttpStatusCode.NotModified;
                return;
            }
            if (request.Params[ProxyBase.REWRITE_MIME_TYPE_PARAM] != null)
            {
                response.ContentType = request.Params[ProxyBase.REWRITE_MIME_TYPE_PARAM];
            }
            if (request.Params[ProxyBase.REFRESH_PARAM] != null)
            {
                int ttl = 0;
                int.TryParse(request.Params[ProxyBase.REFRESH_PARAM], out ttl);
                HttpUtil.SetCachingHeaders(response, ttl);
            }
            response.AddHeader("Content-Disposition", "attachment;filename=p.txt");
            HttpResponseWrapper wrapper = new HttpResponseWrapper(response);
            for (int i = 1; i < int.MaxValue; i++)
            {
                string url = request.Params[i.ToString()];
                if (url == null)
                    break;

                try
                {
                    wrapper.Write(Encoding.UTF8.GetBytes("/* ---- Start " + url + " ---- */"));
                    proxyHandler.Fetch(new RequestWrapper(System.Web.HttpContext.Current, url, true), wrapper);
                    if (wrapper.getStatus() != (int)HttpStatusCode.OK)
                    {
                        wrapper.Write(Encoding.UTF8.GetBytes(
                            formatHttpError(wrapper.getStatus(), wrapper.getErrorMessage())));
                    }

                    wrapper.Write(Encoding.UTF8.GetBytes("/* ---- End " + url + " ---- */"));
                }
                catch (GadgetException ge)
                {
                    if (ge.getCode() != GadgetException.Code.FAILED_TO_RETRIEVE_CONTENT)
                    {
                        outputError(ge, url, response);
                        return;
                    }
                    else
                    {
                        wrapper.Write(Encoding.UTF8.GetBytes("/* ---- End " + url + " 404 ---- */"));
                    }

                }
            }
            response.End();
        }
Exemplo n.º 3
0
 public void Index()
 {
     var request = new HttpRequestWrapper(System.Web.HttpContext.Current);
     var response = new HttpResponseWrapper(System.Web.HttpContext.Current.Response);
     try
     {
         makeRequestHandler.Fetch(request, response);
     }
     catch (Exception e)
     {
         OutputError(e, response.getResponse());
     }
 }
Exemplo n.º 4
0
        public void Index()
        {
            var request  = new HttpRequestWrapper(System.Web.HttpContext.Current);
            var response = new HttpResponseWrapper(System.Web.HttpContext.Current.Response);

            try
            {
                makeRequestHandler.Fetch(request, response);
            }
            catch (Exception e)
            {
                OutputError(e, response.getResponse());
            }
        }
Exemplo n.º 5
0
 public void Index()
 {
     HttpResponse response = System.Web.HttpContext.Current.Response;
     HttpResponseWrapper wrapper = new HttpResponseWrapper(response);
     try
     {
         proxyHandler.Fetch(new ProxyRequestWrapper(System.Web.HttpContext.Current), wrapper);
     }
     catch (Exception ex)
     {
         outputError(ex, response);
         return;
     }
     response.End();
 }
Exemplo n.º 6
0
        public void Index()
        {
            HttpResponse        response = System.Web.HttpContext.Current.Response;
            HttpResponseWrapper wrapper  = new HttpResponseWrapper(response);

            try
            {
                proxyHandler.Fetch(new ProxyRequestWrapper(System.Web.HttpContext.Current), wrapper);
            }
            catch (Exception ex)
            {
                outputError(ex, response);
                return;
            }
            response.End();
        }