Problem med HttpWebRequest og WebProxy
Hej Eksperter,Jeg har en function hvor jeg henter en side via et HttpWebRequest og det virker fint men, jeg vil gerne kunne fortage kaldet via en ekstern proxy server men når jeg tilføjer WebProxy retuner HttpWebRequest functionen 403 access denied. Den eksterne proxy har ikke nogle credentials men den server som kalder dens ip skal være på en whitelist, og denne er blevet tilføjet min kode ser sådan her ud :
private CookieCollection oCookies;
public string HttpRequestCall(string Url){
HttpWebRequest loHttp = (HttpWebRequest)WebRequest.Create(Url);
loHttp.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705)";
loHttp.AllowAutoRedirect = true;
loHttp.MaximumAutomaticRedirections = 3;
loHttp.ContentType = "application/x-www-form-urlencoded";
WebProxy myProxy = new WebProxy();
Uri newUri = new Uri("http://150.197.150.46:1212");
myProxy.Address = newUri;
myProxy.Credentials = new NetworkCredential("", "", "");
loHttp.Proxy = myProxy;
loHttp.CookieContainer = new CookieContainer();
if (this.oCookies != null && this.oCookies.Count > 0)
{
loHttp.CookieContainer.Add(this.oCookies);
}
HttpWebResponse loWebResponse = (HttpWebResponse)loHttp.GetResponse();
if (loWebResponse.Cookies.Count > 0)
if (this.oCookies == null)
{
this.oCookies = loWebResponse.Cookies;
}
else
{
foreach (Cookie oRespCookie in loWebResponse.Cookies)
{
bool bMatch = false;
foreach (Cookie oReqCookie in this.oCookies)
{
if (oReqCookie.Name == oRespCookie.Name)
{
oReqCookie.Value = oRespCookie.Name;
bMatch = true;
break;
}
}
if (!bMatch)
this.oCookies.Add(oRespCookie);
}
}
Encoding enc = Encoding.GetEncoding(1252);
if (loWebResponse.ContentEncoding.Length > 0)
{
enc = Encoding.GetEncoding(loWebResponse.ContentEncoding);
}
StreamReader loResponseStream =
new StreamReader(loWebResponse.GetResponseStream(), enc);
info.InnerHtml = loResponseStream.ReadToEnd();
loResponseStream.Close();
loWebResponse.Close();
}
Er den nogle der kan se hvor fejlen er !!