小程序刚出来,因为预研需要,很不幸的做了一回小白鼠,于是掉进了神坑。
下载文件,首先是没报错了,然后不成功,这个时候,请把 fail打开,把fail的报错信息输出来
wx.downloadFile({
url: 'https://xxxx.xxx.com/test.doc',
success: function (res) {
console.log('111')
var filePath = res.tempFilePath
wx.openDocument({
filePath: filePath,
success: function (res) {
console.log('打开文档成功')
}
})
},
fail:function(err){
console.log(err)
}
})
输出来后,发现出现了这个: downloadFile:fail Error: socket hang up 错误的时候。
确保如下:
1、开发配置中,dowload域名一定要填写;
2、下载的服务器上,需要安装SSL证书;
3、SSL证书的TSL版本必须是大于等于1.2 (这个如何配置,用 powershell命令就可以了,可以网上搜一下)
如果实在不行,发布的时候,把下面这几个玩意, 比如不校验请求域名以及TLS版本 给勾上吧
这个神坑,在于,当你无法搞清楚的时候,请调试一个 request请求。 他的fail信息比较准确,他会告诉你STL版本大于或等于1.2的问题。
于是,按图索骥....