c# - CookieContainer 的 HttpWebRequest 操作超时

标签 c# httpwebrequest timeout

当我使用 HttpWebRequest 并添加:

CookieContainer container = new CookieContainer();
request.CookieContainer = container;

它会在

中抛出一个Operation Timeout异常
HttpWebResponse response = request.GetResponse() as HttpWebResponse;

如果我不添加 CookieContainer,程序运行时不会出错。为什么这行不通?

最佳答案

我也遇到过这个问题。当我请求网页并将 HttpWebRequest 放入 Page_Load 函数并将 cookie 从当前页面添加到 CookieContainer 但它只是卡在那里直到超时

问题是当我第一次请求网页时 asp dot net 只是锁定了 session 以保护从不同地方同时写入的 session 。当我尝试调用 HttpWebRequest 请求同一个域相同的 Session 时,它将被阻塞直到第一页结束它的 session 锁定,同时,第一页正在等待 HttpWebRequest 结束它的工作 这两个请求只是互相等待直到超时。

好消息是我找到了解决这个问题的方法,我只是在第一页中设置了 EnableSessionState="ReadOnly",这使得我调用的第一页不会锁定 session 。 希望这可以帮助某人。

关于c# - CookieContainer 的 HttpWebRequest 操作超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8285500/

相关文章:

php - PHP中POST请求后如何获取HTTP响应头?

java - 手动超时java中的httpurlconnection

javascript - 带有 jquery 对话框的 javascript 中的 session 超时警告

c# - 猜猜插入语句中的错误

c# - 泛型变量定义泛型的目的是什么

c# - HttpWebRequest 自动发送需要的HttpRequests

java - 如果服务器没有响应,超时不起作用

c# - JSON 类型字符串的正则表达式

c# - 使用谓词列表时出现 DataContract SerializationException

c# - 我如何登录、导航并从 protected 网站返回数据,到目前为止我所做的一切都不起作用