HttpWebRequest請求中如何進行域登入

2022-03-30 00:33:20 字數 1104 閱讀 6151

工作中遇到的請求在不同域中的位址時,請求無法成功的問題

查了很多資料,基本上都是說的以下兩點

request.userdefaultcredentials = true;//預設使用登入的憑據

(2).

request.credentials = new networkcredential("username","password");

username,password 為域登入的賬號

上述兩種均未能解決問題。

後來發現networkcredential的建構函式具有5個過載

一、public networkcredential();

// 用指定的使用者名稱和密碼初始化 system.net.networkcredential 類的新例項。

二、public networkcredential(string username, securestring password);

// 用指定的使用者名稱和密碼初始化 system.net.networkcredential 類的新例項。

三、public networkcredential(string username, string password);

// 用指定的使用者名稱、密碼和域初始化 system.net.networkcredential 類的新例項。

四、public networkcredential(string username, securestring password, string domain);

// 用指定的使用者名稱、密碼和域初始化 system.net.networkcredential 類的新例項。

五、public networkcredential(string username, string password, string domain);

因為未使用加密方法,第5個過載中有引數domain,即為登入的網域名稱,使用,問題解決。

request.credentials = new networkcredential("username","password","domain");

HttpWebRequest傳送Post資料

其實傳送和get差不多需要額外多注意的是 2 傳送的url串需要自己拼接的,拼接後用ascii來解碼成byte的陣列傳送。偽 如下 string data username admin password 123456 byte bytes encoding.ascii.getbytes data r...

HttpWebRequest使用總結

httpwebrequest的keepalive預設是true,如果使用的時候僅僅只是關閉流,不關閉網絡卡上的通道的話,第二個請求在tcp沒有關閉的情況下是走同乙個通道,此時本機的tcp通道就會拋異常出來,這是本機拋的錯誤。所以除了關閉本機的io資源外,還要關閉網路資源。需要把keepalive設定...

HttpWebRequest程式設計相關問題階段總結

其實我遇到的最大問題是關於cookes的,而cookeis中,jspsessid導致的問題和domain導致的問題最嚴重。所以我就在想是不是apache中的外掛程式導致了jspsessionid的混亂?在asp.net中,當你用到session時,客戶端始終只有乙個sessionid,始終不變。而j...