(二)利用Proxy類,實現Web代理 下面是利用Proxy類實現Web代理程序的具體實現步驟,Proxy類被定義在命名空間 WebProxy中: 1.在Visual Studio .Net的代碼編輯器中打開Class1.cs文件,進入Class1.cs的代碼編輯界面。 2.在Class1.cs源文件的開頭導入下列命名空間: using System; using System.Net; using System.Net.Sockets; using System.Text; using System.IO; using System.Threading; using WebProxy; 3.在Main函數中添加下列代碼,下列代碼是利用Proxy類,來實現Web代理程序: const int port = 8000 ; //定義端口號 TcpListener tcplistener = new TcpListener(port); Console.WriteLine("偵聽端口號: " + port.ToString()); tcplistener.Start(); //偵聽端口號 while (true) { Socket socket = tcplistener.AcceptSocket(); //并獲取傳送和接收數據的Scoket實例 Proxy proxy = new Proxy(socket); //Proxy類實例化 Thread thread = new Thread(new ThreadStart(proxy.Run)); //創建線程 thread.Start(); //啟動線程 } 保存上面的所有步驟,這樣一個簡單Web代理程序就算是完成了。此Web代理程序偵聽的是8000端口號。 (三)測試Web代碼程序 Web代理程序要通過二臺計算機才能夠實現,其中的一臺計算機運行Web代理程序充當Web代理服務器,另外一臺計算機充當客戶機,通過Web代理服務器來瀏覽網頁。在確定Web代理軟件運行后,需要對客戶機進行進行必要的設置: 1.打開IE瀏覽器。 2.依次選擇“工具”、“Internet選項”,在彈出的“Internet選項”對話框中選擇“連接”頁面,單擊其中的“局域網設置”按鈕,在彈出的“局域網(LAN)設置”對話框,選擇“為LAN使用代理服務器(X),(這些設置不會應用于撥號和VPN連接)”多選框,并在其中的“地址”文本框中輸入代理服務器的IP地址,比如“10.138.198.213”,在“端口”文本框中輸入“8000”,如圖3所示:  此時客戶端的設置就完成了。在確定IP地址為“10.138.198.213”的這臺計算機已經運行上面介紹的Web代理程序后,打開客戶端的IE瀏覽器,并輸入要瀏覽的網址,就可以通過Web代理服務器來瀏覽網頁了。圖4是Web代理服務程序在服務器端運行時的界面:  四、總結 至此一個簡單的Web代理服務軟件就算基本完成了。雖然代理服務的實現原理相對簡單,但具體實現還是很繁瑣的。網絡代理是一個內容豐富,實現復雜的論題,本節介紹的代理服務軟件,無論在實現的協議種類,還是實現的功能,都只能算很小的一部分。希望各位能夠通過本文的介紹,結合其他相關的知識,創造出功能更強大、安全性更高,使用更穩定的網絡代理服務程序來。 源程序下載地址:http://www.cfan.net.cn/qikan/cfan/source/0309csh.zip。(全文完)
|