C#学习教程:慢WebClient.DownloadString?分享


慢WebClient.DownloadString?

我正在使用ASP.Net 3.5运行的Web应用程序

在应用程序的某个地方,我正在调用外部系统。 此调用包括从特定URL下载字符串:

string targetUrl = BuildMyUrl(); WebClient wc = new WebClient(); string data = wc.DownloadString(targetUrl); 

此代码在可接受的响应时间(低于500毫秒)下运行良好。

但是,在特定情况下,此响应时间超过15秒。 我可以重现行为,我可以清楚地看到长时间是在DownloadString调用。

我不明白为什么在我的场景中会发生这种情况

你会说:“嘿,这是目标系统很慢”。 但我无法重现我的应用程序之外的行为(我已经构建了一个隔离错误代码的小型控制台应用程序。永远不会遇到任何问题)。

我现在不知道在哪里了解这个问题。 什么会导致简单的下载数据冗长?

仅供参考:目标系统是身份validation服务。 目标url是实物:

http S :// mysystem / validate?ticket = XXXYYY

也许https协议是个问题。

在IIS下使用WebClient类是否可以改变WebClient的行为?

[编辑]我试过了:

这项测试都没有成功。

尝试在Chrome / FF浏览器中使用Fiddler或某些集成网络分析器来查看HTTPS请求/响应及其标题。

延迟是由证书validation超时引起的。 链中的一个发行者未在客户端服务器中正确部署。

上述就是C#学习教程:慢WebClient.DownloadString?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—猴子技术宅(www.ssfiction.com)

本文来自网络收集,不代表猴子技术宅立场,如涉及侵权请点击右边联系管理员删除。

如若转载,请注明出处:https://www.ssfiction.com/ckf/1031953.html

发表评论

邮箱地址不会被公开。 必填项已用*标注