五.Visual Basic .Net實現(xiàn)查看網(wǎng)頁內(nèi)容:
下面介紹的示例的功能是查看給定給定的URI對應(yīng)的Web頁面的內(nèi)容,此功能類似IE瀏覽器中的“查看源文件”。其主要使用的無非也是WebRequest、HttpWebRequest和遠(yuǎn)程Web主機(jī)創(chuàng)建HTTP連接,然后通過WebResponse和Http WebResponse獲得從Web主機(jī)返回的數(shù)據(jù)流,這些數(shù)據(jù)流就是Web主機(jī)對應(yīng)的Web頁面的內(nèi)容。是想的具體步湊與上面大致相同,只需要修改兩個地方
1. 在【名稱】文本框中輸入【Visual Basic .Net實現(xiàn)查看網(wǎng)頁內(nèi)容】。
2. 在【位置】的文本框中輸入【E:/VS.NET項目】,然后單擊【確定】按鈕,這樣在“E:/VS.NET項目”目錄中就產(chǎn)生了名稱為“Visual Basic .Net實現(xiàn)查看網(wǎng)頁內(nèi)容”的文件夾,并在里面創(chuàng)建了名稱為“Visual Basic .Net實現(xiàn)查看網(wǎng)頁內(nèi)容”的項目文件。
3. 界面設(shè)計如圖6:
圖06:設(shè)計界面
4. 在Form1.vb文件的最前面添加下列代碼,下列代碼在Form1.vb中導(dǎo)入程序中要使用的類所在的命名空間:
Imports System.Net
Imports System.IO
'程序中使用到StreamReader類
using System.Text ;
'程序中使用到Encoding類
7. 用下列代碼替換Form1.vb中的Button1的Click事件對應(yīng)的處理代碼,下列代碼功能是和指定的Web主機(jī)建立HTTP會話連接,并讀取從Web主機(jī)反饋來的數(shù)據(jù)流:
PRivate Sub button1_Click ( ByVal sender As System.Object , ByVal e As System.EventArgs ) Handles button1.Click
Dim myHttpWebRequest As HttpWebRequest
Dim myHttpWebResponse As HttpWebResponse
Try
Dim URL As String = textBox1.Text
Dim myUri As Uri = New Uri ( textBox1.Text )
Dim myWebRequest As WebRequest = WebRequest.Create ( URL )
'使用Creat方法創(chuàng)建WebRequest實例
myHttpWebRequest = CType ( myWebRequest , HttpWebRequest )
'實現(xiàn)WebRequest類型和HttpWebRequest類型的轉(zhuǎn)換
Dim myWebResponse As WebResponse = myHttpWebRequest.GetResponse ( )
'獲得響應(yīng)信息
myHttpWebResponse = CType ( myWebResponse , HttpWebResponse )
Dim myStream As Stream = myHttpWebResponse.GetResponseStream ( )
'獲得從當(dāng)前Internet資源返回的響應(yīng)流數(shù)據(jù)
Dim srReader As StreamReader = New StreamReader ( myStream , Encoding.Default )
'利用獲得的響應(yīng)流和系統(tǒng)缺省編碼來初始化StreamReader實例。
Dim sTemp As String = srReader.ReadToEnd ( )
'從響應(yīng)流從讀取數(shù)據(jù)
srReader.Close ( )
richTextBox1.Text = sTemp
'顯示讀取的數(shù)據(jù) ( )
Catch WebExcp As WebException
MessageBox.Show ( WebExcp.Message.ToString ( ) )
Catch ex As Exception
MessageBox.Show ( ex.ToString ( ) )
End Try
End Sub
5. 至此在上述步驟都正確完成后,【Visual Basic .Net實現(xiàn)查看網(wǎng)頁內(nèi)容】項目的全部工作就基本完成了。此時單擊快捷鍵F5運行程序后,單擊程序中的【查看源文件】按鈕就可以得到如圖07所示的運行界面:
圖07:運行界面
六.總結(jié):
本文具體介紹了.Net FrameWork SDK中提供的用以實現(xiàn)HTTP協(xié)議時主要的類及其成員,并通過二個具體示例的實現(xiàn)過程介紹了在Visual Basic .Net中使用這些類實現(xiàn)HTTP協(xié)議的具體方法。HTTP協(xié)議是TCP/ip協(xié)議簇中的重要協(xié)議,也是平常接觸最多的一種協(xié)議,本文介紹的二個示例雖然結(jié)構(gòu)不是很復(fù)雜,但無論是程序的功能,還是應(yīng)用的層次都應(yīng)該算是最基礎(chǔ),最重要的,把握它們對把握用Visual Basic .Net實現(xiàn)更深層次上,基于HTTP協(xié)議的網(wǎng)絡(luò)應(yīng)用程序應(yīng)該是很有幫助的。
新聞熱點
疑難解答
圖片精選