【问题标题】:Silverlight HttpWebRequest throws a 404 Not Found exception before Webservice respondsSilverlight HttpWebRequest 在 Web 服务响应之前引发 404 Not Found 异常
【发布时间】:2012-01-04 00:25:22
【问题描述】:

我正在尝试使用 ClientHttp 堆栈从 Silverlight 4 Out of 浏览器应用程序调用 Restful 服务。

var request = (HttpWebRequest)HttpWebRequest.Create(uri);
request.BeginGetResponse(new AsyncCallback(ExecuteResponseCallback), state);

我正在调用的服务在收到请求后最多需要 20 秒才能响应,但似乎在大约 10 秒后触发了回调方法。我可以在 Fiddler 中看到该服务在总共 30 秒后使用 200 响应代码最终完成了请求,但是 HttpWebRequest 回调已经收到了 404 Not Found 响应。

我看不出发生这种情况的任何原因,Silverlight 中的 HttpWebRequest 上没有 Timeout 属性,所以我无法理解为什么请求不会无限期地等待响应。

是不是我做错了什么?

【问题讨论】:

    标签: silverlight httpwebrequest


    【解决方案1】:

    经过更多测试,结果证明回调恰好在 10 秒后触发。原来是注册表键引起的

    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ReceiveTimeout
    

    安装 IE9 64bit 似乎是罪魁祸首,以及修改此值的其他一些应用程序。解决方案就是删除这个注册表项,一切都很好。

    这里也描述了这个问题Silverlight ClientHttp WebRequest timeout

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-10-18
      • 2012-12-22
      • 1970-01-01
      • 1970-01-01
      • 2019-08-13
      • 2011-01-24
      • 2022-01-19
      相关资源
      最近更新 更多