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



我正在尝试从网站下载HTML响应,但我一直在得到以下响应:您的Internet浏览器或设备的安全设置似乎已过时。请立即升级。

我试图使用我可以找到的每个用户代理设置,但我仍会收到相同的错误。我还尝试了httpwebrequest方法并收到相同的错误。

当我打开IE或Chrome并键入URL时,请求正常。

这是我的代码:

    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);

我试图致电的URL示例:https://www.royalmail.com/track-your-item?tracknumber=fp065628015GB

您应该将TLS1.2用作本网站的安全协议。这条线应该解决您的问题。

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

最新更新