WebClient请求失败,因为客户端被视为过时的浏览器

时间:2017-09-08 18:20:22

标签: httpwebrequest webclient webclient-download

我尝试从网站下载HTML响应,但我不断收到以下回复:您的互联网浏览器或设备的安全设置似乎已过期。请立即升级。

我试图使用我能找到的每个用户代理设置,但我仍然收到相同的错误。我也尝试了HTTPWebRequest方法并收到了同样的错误。

当我打开IE或Chrome并输入网址时,请求正常。

这是我的代码:

    string url = @"https://www.royalmail.com/track-your-item?trackNumber=" + track.TrackingNumber;
        WebClient client = new WebClient();
        client.Headers.Add("user-agent", "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0)");
        string content = client.DownloadString(url);

我尝试呼叫的网址示例:https://www.royalmail.com/track-your-item?trackNumber=FP065628015GB

1 个答案:

答案 0 :(得分:1)

您应该使用TLS1.2作为此站点的安全协议。 这一行应该可以解决你的问题。

System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;