NET Core的跨平台大家已经有目共睹,而在MAC平台上做开发已经成为目前的主流,无论哪种语言。
在一次微服务移植的过程中,客户端需要发送Http自定义混合验证,在MonoNET上没有任何问题,而移植到NET Core 2.0并运行,就出现了错误:The handler does not support client authentication certificates with this combination of libcurl (7.54.0) and its SSL backend ("LibreSSL/2.0.20")。
为何会出现这种问题呢,莫非NET CORE还不如Mono平台吗!
在GitHub上找到问题解决答案,网址https://github.com/dotnet/corefx/issues/27000
将目标平台升级到NET Core 2.1.xxx(最好是300以后)即可解决这个问题,估计是corefx大佬们被Apple API和Curl妥协了,不想作为补丁的方式进行修复,而是在2.1副本里面进行修复。
哦,对了,Linux上同样会有有Curl版本不匹配而产生的混合认证错误,目标平台可以保持不变,升级Curl即可。