Cookies
中的{p> HttpWebRequest
是只读的,但我需要更改一些Cookie。
我可以使用Set-Cookie
标头,但它容易出错。无论如何以HttpWebRequest
方式更改OO
Cookie?
如果不是,我如何获得System.Net.Cookie
的标题文字? (我会在Set-Cookie
标题中使用它)
答案 0 :(得分:2)
HttpWebRequest targetrequest = (HttpWebRequest)WebRequest.Create(targeturl);
targetrequest.CookieContainer = new CookieContainer();
foreach (string clientcookie in Request.Cookies) {
Cookie targetcookie = new Cookie(clientcookie, Request.Cookies[clientcookie].Value, "/", targetrequest.RequestUri.Host);
targetrequest.CookieContainer.Add(targetcookie);
}
答案 1 :(得分:0)
看一看 http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.cookiecontainer(v=VS.90).aspx
您需要初始化CookieContainer对象并将Cookie添加到其中。
如果您从HttpWebResponse获取cookie,只需将该集合添加到CookieContainer(请参阅:http://msdn.microsoft.com/en-us/library/system.net.cookiecontainer.add(v=VS.90).aspx)。
要更改一个特定的Cookie,您应该访问它并更改其值:
cookies["cookie_name"].Expiration = ...