158 Stimmen

Verwendung von CookieContainer mit der WebClient-Klasse

Ich habe zuvor ein CookieContainer mit HttpWebRequest und HttpWebResponse-Sitzungen verwendet, aber jetzt, ich möchte es mit einem WebClient verwenden. Soweit ich weiß, gibt es keine eingebaute Methode wie für HttpWebRequests ( request.CookieContainer ). Wie kann ich Cookies von einem WebClient in einem CookieContainer sammeln?

I gegoogelt und fand dabei das folgende Beispiel :

public class CookieAwareWebClient : WebClient
{
    private readonly CookieContainer m_container = new CookieContainer();

    protected override WebRequest GetWebRequest(Uri address)
    {
        WebRequest request = base.GetWebRequest(address);
        HttpWebRequest webRequest = request as HttpWebRequest;
        if (webRequest != null)
        {
            webRequest.CookieContainer = m_container;
        }
        return request;
    }
}

Ist dies der beste Weg?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X