簡體   English   中英

通過HttpRequest登錄Windows Live ID

[英]Windows Live ID login via HttpRequest

我想通過HttpRequest / HttpResponse與一個網站進行交互。 但是網絡需要通過Windows Live ID登錄。 我轉到實時登錄頁面,但無法從登錄頁面獲得任何可用的響應。

用於訪問登錄頁面的代碼:

var request = (HttpWebRequest)WebRequest.Create("http://login.live.com/");
request.Timeout = 30000; 
request.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.8 (.NET CLR 3.5.30729)"; 
request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"; 
request.Headers.Add("Accept-Language", "en-us,en;q=0.5"); 
request.Headers.Add("Accept-Charset", "ISO-8859-1,utf-8;q=0.7,*;q=0.7"); 
request.Headers.Add("Keep-Alive", "300"); 
request.ContentType = "application/x-www-form-urlencoded"; 
request.CookieContainer = new CookieContainer(); 
request.Method = WebRequestMethods.Http.Get; 

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

以及響應:

必須允許Cookie

您的瀏覽器當前設置為阻止Cookie。 您的瀏覽器必須允許cookie,然后才能使用Windows Live ID。

Cookies是存儲在計算機上的小型文本文件,用於在登錄后告知Windows Live ID站點和服務。要了解如何允許Cookies,請參閱Web瀏覽器中的聯機幫助。

我在其他網頁上的Cookie沒問題,也找不到任何方法來克服此消息。

有人有想法,如何解決? 謝謝!

嘗試設置CookieContainer對象的Capacity屬性。

....
request.CookieContainer = new CookieContainer(1000); 

我找到了有關如何使用C#訪問Windows Live ID和構建客戶端的完整教程。

在這里閱讀: http : //www.devarticles.com/c/a/C-Sharp/Hotmail-Exposed-Access-Hotmail-using-C-sharp/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM