一段代码来谈。
var client = new RestClient(URL);
client.CookieContainer = new System.Net.CookieContainer();
var loginRequest = new RestRequest(loginURL, Method.GET);
RestResponse response = (RestResponse) client.Execute(loginRequest);
foreach (RestResponseCookie c in response.Cookies)
{
richTextBox1.AppendText(c.Value.ToString()+"\n");
}
当从服务器发送的 set-cookie 标头看起来像这样时:
设置 Cookie:request_method=POST;路径=/; 过期=2033 年 9 月 23 日星期一 21:17:15 -0000
一切都很好,cookie 保持设置,其值附加到richTextBox1。但是,如果 set-cookie 看起来像这样:
设置 Cookie:request_method=POST;路径=/; expires=2033 年 9 月 23 日星期一 21:17:15 UTC
它不起作用 - 没有设置 cookie。当我在谷歌浏览器上检查它时,即使使用 UTC,它也被正确设置。为什么会这样?