乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      ASP.NET WebClient用法詳解

       趨明 2012-03-30

      下面我們將通過一個簡單的應(yīng)用程序來測試WebClient的最簡單用法作為本小節(jié)的結(jié)束讓大家對WebClient有個初步的認(rèn)識
       
         例子1:利用WebClient實現(xiàn)對博客園首頁的訪問
       
          首先我們用HttpLook對這次訪問進行分析,為了方便分析我特別將瀏覽器對圖片的訪問去掉 讓我們能看到更簡便的分析結(jié)果
        
           我們可以看到整個過程中我們發(fā)起了4次資源請求,其中第一次是對博客園首頁進行訪問
           第二次訪問的是樣式表文件,第三和四次訪問的是js腳本。
           我們點擊第一項可以看見關(guān)于這次資源訪問的http頭部信息,所謂http頭部就是我們不能看見的瀏覽器和遠程服務(wù)器傳遞的一些不可見元素。生活歷程
      1GET / HTTP/1.1
      2Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
      3Accept-Language: zh-cn
      4UA-CPU: x86
      5Accept-Encoding: gzip, deflate
      6User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)
      7Host: www.cnblogs.com
      8Connection: Keep-Alive
      9Cookie: .DottextCookie=(隱藏)

        這些http信息包含了瀏覽器訪問的過程。其中
        第一行:請求地址的相對路徑和使用協(xié)議 相對路徑為/ 協(xié)議采用http1.1
        第二行:表示我們請求的資源種類。
        第三行:我們的語言是簡體中文。
        第四行:我們使用的cup結(jié)構(gòu)。這個http頭在一般的網(wǎng)頁中并不過見。估計是博客園的一次調(diào)查??
        第五行:標(biāo)示采用gzip方式壓縮html編碼進行傳遞。只有一些瀏覽器支持的gzip解壓縮時采用這種方式傳遞文本。由于我們
        要寫的程序不具備gzi解壓縮的能力 所以我們不考慮使用這種方式發(fā)送請求。
        第六行:瀏覽器說明
        第七行:當(dāng)前主機地址
        第八行:連接請求狀態(tài)
        第九行:cookies信息
       
        我在新建的應(yīng)用程序里面利用WebClient來實現(xiàn)這了一過程。
       
        下面我將就關(guān)鍵實現(xiàn)做一些解釋
       1WebClient _client=new WebClient();
       2            _client.BaseAddress="http://www.cnblogs.com";
       3            _client.Headers.Add("Accept","image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*");
       4            _client.Headers.Add("Accept-Language","zh-cn");
       5            _client.Headers.Add("UA-CPU","x86");
       6            //_client.Headers.Add("Accept-Encoding","gzip, deflate");
       7            _client.Headers.Add("User-Agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)");
       8            System.IO.Stream objStream=_client.OpenRead("/");
       9            System.IO.StreamReader _read=new System.IO.StreamReader(objStream,System.Text.Encoding.UTF8);
      10            textBox1.Text=_read.ReadToEnd();


        第一行:新建一個WebClient 實例_client
        第二行~第七行:將上邊捕捉到的Http頭部放入到_client實例,注意第六行的被注釋掉了。因為我們的程序無法進行g(shù)zip解碼所以如果這樣請求
        獲得的資源可能無法解碼。當(dāng)然我們可以給程序加入gzip處理的模塊 那是題外話了。
        第八行:利用_client.OpenRead(string URI)的方法獲取網(wǎng)上資源的Stream
        第九行:利用StreamReader將Stream用我們需要的編碼方法去解析。這里使用了UTF8。對應(yīng)不同的網(wǎng)站可以使用Default等不同的解碼方法。
        第十行:將我們解碼后的內(nèi)容放到textBox1里面顯示出來

        好了 大致關(guān)于WebClient的介紹就到這里了。以后將為大家陸續(xù)介紹WebClient的各種屬性和方法。
        利用WebClient做個資源小偷其實是很簡單的,所以大家一定要防盜鏈阿?。?!

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多