2012-12-19 25 views
5

próbuję użyć serwera proxy publicznego (http://www.unblockwebnow.info/), aby wysłać żądanie HTTP do miejsca docelowego, powiedzmy http://stackoverflow.com :)Korzystanie z serwera proxy publiczną klienta HTTP

Mój klient HTTP ma następujące architektury:

string url = "http://stackoverflow.com"; 
HttpWebRequest HttpWRequest = (HttpWebRequest)WebRequest.Create(url); 
HttpWRequest.Method = "GET"; 

WebProxy myProxy = new WebProxy(); 
myProxy.Address = new Uri("http://www.unblockwebnow.info/"); 
HttpWRequest.Proxy = myProxy; 

HttpWebResponse HttpWResponse = (HttpWebResponse)HttpWRequest.GetResponse(); 
StreamReader sr = new StreamReader(HttpWResponse.GetResponseStream(), encoding); 
var rawHTML = sr.ReadToEnd(); 
sr.Close(); 

Po wykonaniu kod rawHTML uzyskać "pageok -managed by puppet - hostingcms02 pageok"

Gdybym wykomentuj HttpWRequest.Proxy = myProxy; linii, otrzymuję treść strony.

+1

Adres proxy jest różnego rodzaju pomieszany. Wygląda jak witryna śmieciowa. –

+0

spróbuj innego proxy –

+0

i portu również – VladL

Odpowiedz

5

To wydaje się działać, ale nie z twoim proxy (nie wiem numer portu dla unblockwebnow.info Dodano numer portu po ":" w identyfikatorze URI

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Net; 
using System.IO; 

namespace ConsoleApplication1 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      string url = "http://stackoverflow.com"; 
      HttpWebRequest HttpWRequest = (HttpWebRequest)WebRequest.Create(url); 
      HttpWRequest.Method = "GET"; 

      WebProxy myProxy = new WebProxy(); 

      //United States proxy, from http://www.hidemyass.com/proxy-list/ 
      myProxy.Address = new Uri("http://72.64.146.136:8080"); 
      HttpWRequest.Proxy = myProxy; 

      HttpWebResponse HttpWResponse = (HttpWebResponse)HttpWRequest.GetResponse(); 
      StreamReader sr = new StreamReader(HttpWResponse.GetResponseStream(), true); 
      var rawHTML = sr.ReadToEnd(); 
      sr.Close(); 

      Console.Out.WriteLine(rawHTML); 
      Console.ReadKey(); 
     } 
    } 
} 
+0

Jeśli to nie działa z jego proxy, to nie odpowiada na jego pytanie. – IronMan84

Powiązane problemy