自动Cookie处理C#/.NET HttpWebRequest + HttpWebResponse

55 .net c# cookies

有没有办法用HttpWebRequest/HttpWebResponse对象自动处理.NET中的cookie?我最好只在.NET环境中寻找LWP :: UserAgent及其行为(perl)的等价物.

有什么建议或意见吗?

Dan*_*ert 128

我认为您正在寻找的是CookieContainer类.如果我理解您正在尝试正确执行的操作,则您有单独的请求和响应对象,并且您希望自动将响应 cookie集合传输到下一个请求 cookie集合中.尝试使用此代码:

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;
Run Code Online (Sandbox Code Playgroud)

创建cookieJar并将其设置为请求的CookieContainer之后,它将存储来自响应的任何cookie,因此在上面的示例中,cookie jar的计数将在1它访问Google.com后计算.上面的请求和响应的cookie容器属性将存储指向cookieJar的指针,因此cookie将自动处理并在对象之间共享.

  • 饼干罐 - 我喜欢它! (18认同)