问题描述
将JS文件上传到OSS,只在Android版微信端和QQ浏览器中报错。
问题原因
微信或者QQ加了Content-Type:application/octet-stream
这个头信息。
解决方案
使用笔记本打开Wi-Fi,手机连接Wi-Fi做上传测试。
在电脑上用Wireshark抓包工具进行抓包,抓包后发现是签名无法匹配的错误,具体分析发现多加了一个
Content-Type:application/octet-stream
信息。这个头SDK在计算签名时并没有加上,但是发送请求时微信或者QQ浏览器会加个这个头信息导致报错。这个头计算签名也是要计算在内的。经测试,去除这个头后再模拟上传没有问题。因此问题定位是微信或者QQ加了
Content-Type:application/octet-stream
这个头信息。在微信端去除这个头信息。
文档内容是否对您有帮助?