【问题标题】:WebClient request fails because client is seen as outdated browserWebClient 请求失败,因为客户端被视为过时的浏览器
【发布时间】:2017-09-08 18:20:21
【问题描述】:

我正在尝试从网站下载 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

【问题讨论】:

    标签: httpwebrequest webclient


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-11-25
      • 1970-01-01
      • 2011-10-02
      • 1970-01-01
      • 2017-03-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多