我无法弄清楚为什么某些从 iOS 上传到我们服务器的内容会导致空文件。上传页面是一个简单的表单,使用 POST 和 enctype 作为 multipart/form-data。
该问题似乎仅在用户执行以下操作时才会出现:
- 正在使用 iOS
- 尝试从云服务(当前为 iCloud 或 Dropbox)上传文件即使该文件是本地系统上的版本
- 在选择文件之间留出一段时间(通过
<input type=file>
按钮)并开始上传,大约需要 30 秒到 1 分钟。
我不确定与文件的连接是否存在超时问题,如果是,这是否是一个错误或安全功能。如果用户选择文件并在此时间内启动上传,则文件上传成功。
从“真正的”本地系统(例如在任何云文件夹之外)上传的文件上传效果很好,即使有任何延迟也是如此。文件大小和文件类型似乎无关。
我知道 Dropbox 有一个“选择器”系统,它转发链接而不是文件,但在测试中,只要用户在短时间内上传,Dropbox 文件仍然会成功上传。
处理上传的表单相当大,有很多选项,因此用户通常会在选择文件和启动上传之间花费一些时间。
在 Android 或 OSX 桌面平台上不会出现此问题。
我还使用独立的在线上传器进行了测试,即http://checkfiletype.com/ http://checkfiletype.com/并进行了相同的测试,并且发生了相同的事情:
立即按“上传”后的结果 https://i.stack.imgur.com/vP6IB.jpg,
and
短暂延迟后然后按“上传”即可得到结果。 https://i.stack.imgur.com/6tG3B.jpg
我不知道从这里到哪里去,大多数谷歌搜索只显示有关上传到云平台的结果,而不是来自它们的结果。我错过了什么吗?
更新:随着 iOS 15.4 的发布,情况似乎不再如此。这更新页面 https://support.apple.com/en-us/HT212788包含在“错误修复”下:
照片和视频可能无法同步到 iCloud 照片库
虽然它没有直接描述错误,但开发团队似乎实际上已经对选择器/文件系统进行了调整。真是可惜,花了好几年的时间。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)