【问题标题】:HttpClient changes HTTPS to HTTP on some machinesHttpClient 在某些机器上将 HTTPS 更改为 HTTP
【发布时间】:2017-04-04 11:46:56
【问题描述】:

我在具有 HTTPS 方案 的 URL 上使用 HttpClient.PostAsync。奇怪的是,在我的一台机器上,请求以 plain HTTP 的形式发出。

        var networkCredential = new NetworkCredential(_args.Username,_args.Password);
        var handler = new HttpClientHandler { Credentials = networkCredential };

        using (var client = new HttpClient(handler))
        {
                   var requestResult = client.PostAsync("https://www.example.com", new StringContent("")).Result.StatusCode;  
        }

我正在使用 Fiddler 来嗅探实际发送的内容。坏机器在 Windows server 2008 上运行 dot net 4.5.2 4.5,但是我已经在另一台具有 相同配置 的机器上测试了代码,一切正常。

在 .net 之外的坏机器上运行上述请求可以正常工作。

有什么想法吗?

谢谢

【问题讨论】:

    标签: c# .net dotnet-httpclient


    【解决方案1】:

    我将 .net 框架升级到 4.6.2,现在一切正常。

    如您所见,我原本以为坏机器有 .net 4.5.2,但它实际上有 .net 4.5。

    【讨论】:

      猜你喜欢
      • 2011-01-22
      • 2018-05-22
      • 2015-01-21
      • 2014-11-14
      • 1970-01-01
      • 2021-12-14
      • 2020-11-18
      • 2018-03-08
      • 2014-10-26
      相关资源
      最近更新 更多