日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

HttpWebRequest向路由器提交基本身份驗證_Windows教程

編輯Tag賺U幣
HttpWebRequest向路由器提交基本身份驗證

  服務(wù)端IIS設(shè)置為不允許匿名訪問,只選擇了基本身份驗證,客戶端使用HttpWebRequest發(fā)送一個get請求,請求一個頁面。

  基本身份驗證,客戶端直接把用戶的用戶名和密碼簡單的轉(zhuǎn)換為base64編碼后發(fā)送到服務(wù)端,屬于明碼傳送,不具安全性。

 

看一下整個請求響應(yīng)過程:

1.1.    第一次HttpWebRequest先以匿名發(fā)送http請求

1.2.    服務(wù)端返回無授權(quán)回應(yīng)
服務(wù)端IIS設(shè)置為不允許匿名訪問,要求基本身份驗證,所以服務(wù)端返回無授權(quán)回應(yīng),

同時在http頭加了個WWW-Authenticate: Basic realm="2003base" 頭,Basic表示要求基本身份驗證。

1.3.    HttpWebRequest發(fā)送base64格式的用戶名和密碼
HttpWebRequest收到Basic的驗證頭后,就把NetworkCredential提供的用戶名和口令鏈接起來,轉(zhuǎn)換成base64編碼,直接發(fā)送到服務(wù)端。

Base64編碼用戶名和密碼看上去是這樣的:Y2hua2luZzpwYXNzd29yZA==

經(jīng)過轉(zhuǎn)換后,可以看到用戶名和密碼是:chnking:password

代碼:

/// <summary>
       
/// 路由器設(shè)置
      
/// </summary>

       
/// <param name="userName">路由器登錄用戶名</param>
       
/// <param name="password">路由器登錄密碼</param>
      
/// <param name="url">操作路徑</param>
        public static void RouterSet(string userName, string password, string url)
        {
           
try

            {  
                HttpWebRequest request
= (HttpWebRequest)HttpWebRequest.Create(url);

                request.Method
= "get"
;
                request.ContentType
= "application/x-www-form-urlencoded"
;
                request.Credentials
=
CredentialCache.DefaultCredentials;

               
//獲得用戶名密碼的Base64編碼

                string code = Convert.ToBase64String(Encoding.ASCII.GetBytes(string.Format("{0}:{1}", userName, password)));

               
//添加Authorization到HTTP頭

                request.Headers.Add("Authorization", "Basic " + code);


                HttpWebResponse response
=
(HttpWebResponse)request.GetResponse();
                response.Close();

            }
           
catch
(Exception ex)
            {
                LogHelper.logerror.Error(
"路由器設(shè)置錯誤:"+
ex.Message);
            }
        }

來源:網(wǎng)絡(luò)搜集//所屬分類:Windows教程/更新時間:2011-12-08
相關(guān)Windows教程