我有以下代碼繞過本地計算機的代理服務器,然後發送WebRequest。WebRequest從另一個IP生成而不是我的系統IP?
System.Net.HttpWebRequest Request;
System.Net.WebResponse Response;
System.Net.CredentialCache MyCredentialCache;
編輯1
//System.Net.WebProxy proxyObject = new WebProxy("http://172.24.1.87:8080",true);
string strRootURI = "http://172.24.18.240/webdav/";
string strUserName = "UsName";
string strPassword = "Pwd";
// string strDomain = "Domain";
string strQuery = "";
byte[] bytes = null;
System.IO.Stream RequestStream = null;
System.IO.Stream ResponseStream = null;
System.Xml.XmlTextReader XmlReader = null;
try
{
// Build the SQL query.
strQuery = "myWebDavVerb";
// Create a new CredentialCache object and fill it with the network
// credentials required to access the server.
MyCredentialCache = new System.Net.CredentialCache();
MyCredentialCache.Add(new System.Uri(strRootURI), "Basic", new System.Net.NetworkCredential(strUserName, strPassword));//, strDomain)
// Create the HttpWebRequest object.
Request = (System.Net.HttpWebRequest)HttpWebRequest.Create(strRootURI);
// Add the network credentials to the request.
Request.Credentials = MyCredentialCache;
// Request.Proxy = proxyObject;
// Specify the method.
Request.Method = "PROPFIND";
}
現在,當我嘗試執行我得到403錯誤。所以我檢查了服務器日誌,發現HTTP/1.0請求來自IP 172.24.1.87
,而我的IP是172.24.17.220
。
有沒有辦法避免這種情況?我認爲這是403錯誤的根本原因。
請幫忙。 謝謝,
Subhen
我已刪除了代理SETT默認代理的代理從我的代碼現在,但現在的請求來自172.24.1.86 – Simsons 2010-06-28 11:56:31
@Subhen:這可能是你的網絡的默認代理? – 2010-06-28 12:05:28
是的,我們可以避免這種情況。因爲我嘗試過使用Netdrive並通過NetMon進行監控,在這種情況下,NetDrive應用程序未使用代理服務器。它直接從我的IP生成請求。 – Simsons 2010-06-28 12:08:43