HttpWebRequest/HttpWebResponseオブジェクトで.NETのCookieを自動的に処理する方法はありますか? .NET環境でのみ、LWP :: UserAgentとその動作(Perl)に相当するものを探しています。
提案やアドバイスはありますか?
あなたが探しているのは CookieContainer クラスだと思います。あなたが正しくやろうとしていることを理解していれば、リクエストとレスポンスに別々のオブジェクトがあり、responseCookieコレクションをnextrequestCookieコレクションが自動的に収集されます。このコードを使用してみてください:
CookieContainer cookieJar = new CookieContainer();
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create("http://www.google.com");
request.CookieContainer = cookieJar;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
int cookieCount = cookieJar.Count;
cookieJar
を作成し、リクエストのCookieContainerに設定すると、レスポンスからのすべてのCookieが保存されるため、上記の例では、Cookie jarのカウントは1
Google.comにアクセスすると。上記のリクエストとレスポンスのCookieコンテナプロパティには、cookieJarへのポインタが格納されるため、Cookieは自動的に処理され、オブジェクト間で共有されます。