我有一个网站使用表单身份验证,并在用户验证后调用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.任何人都可以帮助我理解为什么会这样。
提前致谢。
答案 0 :(得分:0)
您很可能会在response.Headers["Set-Cookie"]
中找到Cookie。您可以将这些Cookie存储在CookieContainer
类的实例中,只需CookieContainer.SetCookies(baseAddress, response.Headers["Set-Cookie"]
,然后在后续请求中使用此CookieContainer
实例。希望这会有所帮助。