今天同事遇到一问题,C#无法获取全部的cookie值,在谷歌浏览器中。能看到。C#无法获取到全部。
简单说下已过期的cookie系统会自动忽略。剩余部分需要靠Async来获取。
过程不多说了,完美解决如下:
public static List<string> GetHttpCookies(string Url)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
request.Method = "GET";
request.ContentType = "text/html;charset=UTF-8";
var response = (HttpWebResponse)request.GetResponse();
var resultAsync = request.GetResponseAsync();
return resultAsync.Result.Headers.GetValues("Set-Cookie").ToList();
}