2013-09-26 159 views
0

我正在嘗試創建一個bot,它將登錄到網站,登錄後將在該網站上執行POST請求。如何使用登錄Cookie登錄並執行POST請求

我想使用WebClient或類似的東西。 我想登錄並執行POST請求的網站是「https://login.sabanciuniv.edu/cas/login

此外,如果我可以檢查登錄過程是否成功,它將會很酷。

(如果有任何語法或語言的特定錯誤,請原諒我,我不是本地:))

的Oguzhan(的Oguzhan)

回答

1

通過擴展Web客戶端創建一個cookieawarewebclient:

private class CookieAwareWebClient : WebClient 
{ 
    public CookieAwareWebClient() 
     : this(new CookieContainer()) 
    { } 
    public CookieAwareWebClient(CookieContainer c) 
    { 
     this.CookieContainer = c; 
    } 
    public CookieContainer CookieContainer { get; set; } 

    protected override WebRequest GetWebRequest(Uri address) 
    { 
     WebRequest request = base.GetWebRequest(address); 

     var castRequest = request as HttpWebRequest; 
     if (castRequest != null) 
     { 
      castRequest.CookieContainer = this.CookieContainer; 
     } 

     return request; 
    } 
} 

並創建一個模擬登錄的發佈請求。爲此,您可以使用Fiddler,您可以在單擊「提交」按鈕時看到發生的確切事情,並且您只需在代碼中執行相同操作即可。

+0

Okey,現在我試圖使用這個CookieAwareWebClient,但我不能讓它工作。 http://www.pastebin.ca/2458890 錯誤在於HtmlResult –

+0

您錯過了標題: http://pastebin.ca/2459021 – Kubik

+0

如果有幫助請標記爲答案。 – Kubik

相關問題