微信小程序图片上传时,iOS端第一次上传必定失败,nignx返回400,短时间内再次上传可以成功。 而安卓端完美运行。

发布于 2022-09-07 12:13:30 字数 1439 浏览 40 评论 0

自己分析:
1 是小程序本身兼容有问题。

2 是nginx配置问题。

已经逛过小程序官方社区,看到有几个人遇到跟我一样的问题,但都没有被详细答复。我也详细描述了一下自己的问题。
https://developers.weixin.qq....

网上搜过nginx返回400可能是client_header_buffer_size 或 large_client_header_buffers不够大的问题,也已经调整过。分别是128k和1m。但问题依旧在。

个人感觉不是缓冲区大小问题,因为安卓端(我所能找到的机子)完美运行,而ios端(我所能找到的机子)必定是第一次失败,而后短时间内再次上传必定成功。 但是再隔几分钟后又必定失败。 实在是很诡异。

更神奇的是,想通过fildder抓包分析。但没法复现问题。 一旦手机连上代理,就成功上传。而断开代理,使用4G网络,又会出现一样的问题。

附上nginx的log
失败的log
xxx.xxx.xxx.xxx - - [05/Jun/2018:14:27:57 +0800] "POST /api/seek/imgUpload HTTP/2.0" 400 220 "https://servicewechat.com/wx02bbc36d9065ad9e/0/page-frame.html" "Mozilla/5.0 (iPhone; CPU iPhone OS 11_1_2 like Mac OS X) AppleWebKit/604.3.5 (KHTML, like Gecko) Mobile/15B202 MicroMessenger/6.6.1 NetType/WIFI Language/zh_CN"

成功的log
xxx.xxx.xxx.xxx- - [05/Jun/2018:14:28:04 +0800] "POST /api/seek/imgUpload HTTP/2.0" 200 238 "https://servicewechat.com/wx02bbc36d9065ad9e/0/page-frame.html" "Mozilla/5.0 (iPhone; CPU iPhone OS 11_1_2 like Mac OS X) AppleWebKit/604.3.5 (KHTML, like Gecko) Mobile/15B202 MicroMessenger/6.6.1 NetType/WIFI Language/zh_CN"

我是看不出什么区别。。一模一样

以上是我的完整描述以及我所尝试的解决方法。 都没有解决。

麻烦各路大神抽空帮帮忙,不胜感激。。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

在你怀里撒娇 2022-09-14 12:13:31

新进展,目前发现有问题的貌似都是阿里云服务器,是需要添加什么配置吗。。

夏の忆 2022-09-14 12:13:31

请问你解决了么,我也遇到了这个问题,完全一样

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文