我有一个使用表单身份验证的网站,并在用户经过验证时调用FormsAuthentication.SetAuthCookie
,即FormsAuthentication.SetAuthCookie(userName, false)
。
我目前正在创建 HttpWebRequests 并使用用户名和密码调用网站,尽管凭据通过验证 - 响应在其 cookie 集合中没有任何 cokkies。
HTTP 请求/响应代码如下:
HttpWebRequest request = (HttpWebRequest) CreatePostRequest(baseAddress, postParameters);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
代码得到响应很好,在调试时,我可以看到凭据被验证正常,并且调用了FormsAuthentication.SetAuthCookie(user,false)。
当我检查响应cookie集合时,计数为0。谁能帮我理解为什么会这样。
提前谢谢。
您很可能会在 response.Headers["Set-Cookie"]
中找到 cookie 。您可以将这些 Cookie 存储在CookieContainer
类的实例中,只需CookieContainer.SetCookies(baseAddress, response.Headers["Set-Cookie"]
然后在后续请求中使用此CookieContainer
实例即可。希望这有帮助。