【问题标题】:FormsAuthentication.SetAuthCookie is not setting cookie in WebResponse Cookie CollectionFormsAuthentication.SetAuthCookie 未在 WebResponse Cookie 集合中设置 cookie
【发布时间】:2012-05-30 13:41:13
【问题描述】:

我有一个使用表单身份验证的网站,并在用户通过验证后调用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。谁能帮我理解这是为什么。

提前致谢。

【问题讨论】:

    标签: c# formsauthentication


    【解决方案1】:

    您很可能会在 response.Headers["Set-Cookie"] 中找到 cookie。您可以通过 CookieContainer.SetCookies(baseAddress, response.Headers["Set-Cookie"] 将这些 cookie 存储在 CookieContainer 类的实例中,然后在后续请求中使用此 CookieContainer 实例。希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 2014-10-10
      • 2015-09-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-11
      • 2020-12-31
      • 2012-09-27
      • 2021-11-03
      相关资源
      最近更新 更多