0
偶尔,我的程序似乎无法制作HTTP Post。我把它缩小到一个饼干,显然正在丢失。Cookie在HttpWebRequest上丢失/丢失GetReponse
一些调查,我把范围缩小
HttpWebResponse response = (HttpWebResponse)http.GetResponse();
奇怪的是,它不发生的时间,通常当此方法是第一次运行,那么一切都很好(我强迫重新后除了此cookie。
我似乎已经入侵了一个解决方案一起,对于这种情况下的工作(但我担心它会破坏其他情况下,如通常与黑客的解决方案的方式)。
var cookiesPrePull = cookies.GetCookies(http.RequestUri);
HttpWebResponse response = (HttpWebResponse)http.GetResponse();
foreach (Cookie cookiePre in cookiesPrePull)
{
bool bExist = false;
foreach (Cookie cookiePost in cookies.GetCookies(http.RequestUri))
{
if (cookiePre.Name == cookiePost.Name)
{
bExist = true;
break;
}
}
if (!bExist)
{
cookies.Add(cookiePre);
}
}
我想了解的是为什么Cookie被GetResponse调用所抛弃。审查小提琴手,没有提到这个cookie。唯一的cookie代码是设置两个cookie。一个已经存在,一个不存在。
该cookie肯定没有过期。在我在这个
欢呼使用CookieCollection和的CookieContainer这样保持你的cookies