HttpClient请求在Mac上的.Net Core中失败

时间:2017-09-29 16:02:58

标签: ssl asp.net-core .net-core

我有一个本地的.net核心2.0控制台应用程序,试图通过HttpClient向我本地运行的.net核心网络应用程序发送一个帖子请求:

var webClient = new HttpClient();
webClient.BaseAddress = new Uri("https://localhost:5001");
var result = await _webClient.PostAsync("some_location", data);

在Windows上,这似乎工作正常。但在macOS上,我收到一个错误:

System.Net.Http.CurlException

Peer certificate cannot be authenticated with given CA certificates
at System.Net.Http.CurlHandler.ThrowIfCURLEError(CURLcode error)
at System.Net.Http.CurlHandler.MultiAgent.FinishRequest(StrongToWeakReference`1 easyWrapper,CURLcode messageResult) 
End of inner exception

我认为这是因为我的本地网络应用程序使用的是不受信任的SSL证书 - 我正在开发Kestrel以便像这样使用SSL:

.UseKestrel(options =>
    {
            options.Listen(IPAddress.Loopback, 5000);
            options.Listen(IPAddress.Loopback, 5001, listenOptions =>
            {
                listenOptions.UseHttps("localhost.pfx", "password");
            });
    }) 

但是,我已经努力制作一个受信任的本地SSL证书(所以当我在chrome中访问该网站时,我没有收到SSL警告),而且我仍然在我的控制台应用程序中看到此错误。

有什么想法吗?

0 个答案:

没有答案