golang项目访问https的问题
一个golang的项目,使用了腾讯云的短信服务,腾讯云的短信服务URL是https://yun.tim.qq.com/v5/tlssmssvr/sendsms?sdkappid=xxxxx&random=xxxx,在开发平台,可以正常使用。编译后部署到生产平台,短信发不出来了。为了定位问题,找了一台干净的测试机,部署后也发不出短信,因此判断生产平台的云服务器没有问题。 在测试机上,经过调试,终于定位错误信息:x509: failed to load system roots and no roots provided 搜索错误信息,首先找到这篇《go语言在不支持cgo的情况下访问https链接》,看完内容后直觉这个解决方法不对,太不优美了。接着看到《go语言获取https报错x509: failed to load system roots》这篇,思路和解决方法没错了。因为我使用的是freebsd平台,所以对应的软件包名肯定不一样。尝试openssl等几个软件包,都没有解决问题。直到看到https://wiki.freebsd.org/Docker里有这么一段: Common ...