Hello!<br>I <span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: arial; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"><span class="Apple-style-span" style="border-collapse: collapse; font-family: Arial; white-space: pre;">tried that, but if I test any page like that :<br>
Proxy.ashx?url=<a href="http://www.google.com">http://www.google.com</a><br> I got a empty blank page...<br><br>Any idea?<br></span></span><span class="ul-threaded" style="margin: 0.5em 0pt 0pt -20px;"><span class="text-cell"><span><b class="highlight">P</b></span></span></span><br>
<br>---------------------------------<br><br><%@ WebHandler Language="C#" Class="Proxy" %><br><br>using System;<br>using System.Web;<br>using System.Net;<br>using System.IO;<br>using System.Text;<br>
using System.Configuration;<br><br><br>public class Proxy : IHttpHandler {<br> <br> public void ProcessRequest (HttpContext context) {<br> <br> HttpWebRequest request = (HttpWebRequest)WebRequest.Create(context.Request["url"]);<br>
request.UserAgent = context.Request.UserAgent;<br> request.ContentType = context.Request.ContentType;<br> request.Method = context.Request.HttpMethod;<br><br> byte[] trans = new byte[1024];<br>
int offset = 0;<br> int offcnt = 0;<br> <br> if (request.Method.ToUpper() == "POST")<br> {<br> Stream nstream = request.GetRequestStream();<br> while (offset < context.Request.ContentLength)<br>
{<br> offcnt = context.Request.InputStream.Read(trans, offset, 1024);<br> if (offcnt > 0)<br> {<br> nstream.Write(trans, 0, offcnt);<br> offset += offcnt;<br>
}<br> }<br> nstream.Close();<br> }<br> <br> using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())<br> {<br> context.Response.ContentType = response.ContentType;<br>
<br> using (Stream receiveStream = response.GetResponseStream())<br> {<br> offset = 0;<br> offcnt = receiveStream.Read(trans, offset, 1024);<br> while (offcnt>0)<br>
{<br> context.Response.OutputStream.Write(trans, 0, offcnt);<br> offset += offcnt;<br> if (offcnt >= 0)<br> {<br> try<br>
{<br> offcnt = receiveStream.Read(trans, offset, 1024);<br> }<br> catch (Exception)<br> {<br> break;<br>
}<br> }<br> else<br> break; <br> }<br> }<br> context.Response.OutputStream.Close();<br> context.Response.Flush();<br>
response.Close();<br> }<br> }<br> <br> public bool IsReusable {<br> get {<br> return false;<br> }<br> }<br><br>}<br>