網(wǎng)絡(luò)與通信程序設(shè)計(jì):14 應(yīng)用層_第1頁(yè)
網(wǎng)絡(luò)與通信程序設(shè)計(jì):14 應(yīng)用層_第2頁(yè)
網(wǎng)絡(luò)與通信程序設(shè)計(jì):14 應(yīng)用層_第3頁(yè)
網(wǎng)絡(luò)與通信程序設(shè)計(jì):14 應(yīng)用層_第4頁(yè)
網(wǎng)絡(luò)與通信程序設(shè)計(jì):14 應(yīng)用層_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第十四章 應(yīng)用層網(wǎng)絡(luò)編程14.1 WEB與HTTPWebBrowser 網(wǎng)頁(yè)瀏覽器WebBrowser 是一個(gè).NET 控件類 (.NET Framework 2.0中新增) ,使用它用戶可以在窗體中導(dǎo)航網(wǎng)頁(yè)。http:/zh-cn/library/system.windows.forms.webbrowser.aspx主要屬性與方法Url/網(wǎng)址Navigate(Uri)/導(dǎo)航GoBack()/后退GoForward() /前進(jìn)GoHome()/主頁(yè)GoSearch()/搜索頁(yè)HTTP協(xié)議HyperText Transfer Protocol,超文本傳輸協(xié)議WWW客戶端和服務(wù)器端請(qǐng)求和應(yīng)答的標(biāo)

2、準(zhǔn),是應(yīng)用層協(xié)議HTTP通信過(guò)程客戶端發(fā)起請(qǐng)求,與服務(wù)器端完成“TCP三次握手”客戶端向服務(wù)器端發(fā)出“HTTP請(qǐng)求報(bào)文”服務(wù)器端在完成內(nèi)部處理后,向客戶端發(fā)出“HTTP響應(yīng)報(bào)文”客戶端與服務(wù)器端完成“TCP四次分手”HTTP報(bào)文結(jié)構(gòu)報(bào)文由三個(gè)部分組成:開(kāi)始行、首部行和主體在請(qǐng)求報(bào)文中,開(kāi)始行就是請(qǐng)求行協(xié)議定義了八種請(qǐng)求方法:GET/POST/HEAD參考:/01/2515.htm基于WebClient類實(shí)現(xiàn)文件/數(shù)據(jù)下載System.Net.WebClient類提供向 URI 標(biāo)識(shí)的資源發(fā)送數(shù)據(jù)和從 URI 標(biāo)識(shí)的資源接收數(shù)據(jù)的公共方法/zh-cn/library/tt0f69eh(v=vs.

3、80).aspxWebClient 使用 WebRequest 類提供對(duì)資源的訪問(wèn)WebRequest(abstract類,不可實(shí)例化)調(diào)用 Create 方法返回 WebRequest 實(shí)例調(diào)用 GetResponse 方法創(chuàng)建 WebResponse 實(shí)例WebClient 主要屬性與方法主要屬性Credentials Headers QueryString 主要方法OpenReadAsync DownloadDataAsync DownloadFileAsync OpenWriteAsync UploadDataAsync UploadFileAsync 編程實(shí)例使用WebClient下

4、載文件WebClient client = new WebClient();client.DownloadFile(下載地址, 保存路徑);請(qǐng)求與響應(yīng)(下載文本/數(shù)據(jù))WebRequest wr = WebRequest.Create(URI);WebResponse wrp = wr.GetResponse();/請(qǐng)求上的響應(yīng)logs.AppendText(wrp.ContentLength.ToString();StreamReader stream = new StreamReader(wrp.GetResponseStream();logs.AppendText(stream.Read

5、ToEnd();文件上傳下載的多線程處理與同步使用 Invoke使用 BegingInvoke / EndInvoke 和 IAsyncResult使用 Thread 和 Timer 控件使用 BackgroundWorkerWebClient 更具體的類WebRequest (調(diào)用 Create 方法創(chuàng)建以下實(shí)例)HttpWebRequest (WebRequest 的HTTP實(shí)現(xiàn), http:/ https:/)FtpWebRequest (WebRequest 的FTP實(shí)現(xiàn), ftp:/)FileWebRequest (WebRequest 的文件系統(tǒng)實(shí)現(xiàn),file:/)WebRespo

6、nse (在Request上用GetResponse方法創(chuàng)建)HttpWebResponseFtpWebResponseFileWebResponse網(wǎng)絡(luò)爬蟲(chóng)與索引算法網(wǎng)絡(luò)爬蟲(chóng)(網(wǎng)頁(yè)蜘蛛,網(wǎng)絡(luò)機(jī)器人),是一種按照一定的規(guī)則,自動(dòng)的抓取萬(wàn)維網(wǎng)信息的程序或者腳本。抓取策略可以分為廣度優(yōu)先、深度優(yōu)先、最佳優(yōu)先三種。AltaVista.索引的限制探索P:創(chuàng)建索引的元詞把戲PageRank,網(wǎng)頁(yè)排名算法拉里佩奇.解析大規(guī)模超文本網(wǎng)絡(luò)搜索引擎J:隨機(jī)訪問(wèn)者把戲“根據(jù)鏈入鏈接數(shù)對(duì)網(wǎng)頁(yè)排名”SiteRank,網(wǎng)站排名算法站點(diǎn)劃分和站點(diǎn)等級(jí)計(jì)算對(duì)網(wǎng)站間的鏈接抽象,計(jì)算權(quán)重FTP文件傳輸協(xié)議與實(shí)現(xiàn)FTP 文件傳輸

7、協(xié)議文件傳輸協(xié)議FTP(File Transfer Protocol)是TCP/IP提供的標(biāo)準(zhǔn)機(jī)制,使得主機(jī)間可以共享文件。FTP 使用 TCP 生成一個(gè)虛擬連接用于控制信息,然后再生成一個(gè)單獨(dú)的 TCP 連接用于數(shù)據(jù)傳輸。協(xié)議指令與響應(yīng)代碼FTP編程實(shí)現(xiàn)編程實(shí)例/連接與認(rèn)證WebRequest wr = WebRequest.Create(uristring);wr.Credentials = new NetworkCredential(usr, psw);/顯式轉(zhuǎn)換該連接為FTP連接FtpWebRequest fwr = (FtpWebRequest)wr;/發(fā)出顯示目錄詳細(xì)信息的命令fw

8、r.Method = WebRequestMethods.Ftp.ListDirectoryDetails;/獲得該連接上的響應(yīng)FtpWebResponse response = (FtpWebResponse)wr.GetResponse();/顯示回應(yīng)代碼及狀態(tài)logs.Text = response.StatusDescription;/讀取響應(yīng)流并顯示StreamReader stream = new StreamReader(response.GetResponseStream();logs.AppendText(stream.ReadToEnd();電子郵件傳輸協(xié)議與實(shí)現(xiàn)14.2

9、Email SMTP客戶端POP3與SMTP協(xié)議Simple Transfer Protocol,提交和傳送電子郵件,規(guī)定主機(jī)間傳輸電子郵件的標(biāo)準(zhǔn)交換格式和鏈路層傳輸機(jī)制,默認(rèn)TCP 25端口。Post Office Protocol 3,提供信息存儲(chǔ)功能,可以保存和下載郵件,默認(rèn)TCP 110端口。SMTP協(xié)議SMTP定義了發(fā)送郵件的流程、格式、指令等內(nèi)容。嘗試連接,等候返回220 Ready發(fā)出HELO,等候返回250 OK發(fā)送MAIL FROM:,等待返回250 OK/550 No such user發(fā)出RCPT TO:,等待250 OK/550 No such user發(fā)送DATA,等

10、待響應(yīng)354 Start mail input發(fā)送郵件標(biāo)題及內(nèi)容,并發(fā)送.結(jié)束,等待返回250 OK發(fā)出QUIT,等待響應(yīng)221 OKCR 回車 r ASCII13;LF 換行 n ASCII 10.Net 對(duì)SMTP協(xié)議的支持System.Net.Mail 命名空間/zh-cn/library/.mail.aspxMailMessage 類表示郵件的內(nèi)容SmtpClient 類將電子郵件傳輸?shù)街付⊿MTP 主機(jī)Attachment 類創(chuàng)建郵件附件主要屬性方法MailMessage.FromMailMessage.ToMailMessage.SubjectMailMessage.BodyMai

11、lMessage.AttachmentsSmtpClient.UseDefaultCredentialsSmtpClient.CredentialsSmtpClient.Send(MailMessage)郵件發(fā)送例程using System.Net;using System.Net.Mail;/定義郵件MailMessage mm = new MailMessage();mm.From = new MailAddress(poster); /定義發(fā)件人mm.To.Add(mailto); /添加收件人mm.Subject = mailtitle;/郵件標(biāo)題mm.Body = mailbody;/郵件內(nèi)容mm.IsBodyHtml = true ; /郵件主體支持htmlmm.Attachments = new Attachment(filename); /郵件附件/發(fā)送郵件SmtpClient sc = new SmtpClient(smtphost, smtphostport);sc.UseDefaultCredentials = true;

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論