【发布时间】:2019-09-02 04:51:38
【问题描述】:
我在这里有一个基于 PHP 的 API 项目,该项目继承自我的前任,他已转移到另一个项目。现在,我正在研究上传文件的一些奇怪行为,对于 Android、iOS 和 Postman 的所有三个小文件,它们总是成功,但开始仅在 iOS 和 Postman 而不是 Android 上失败。
我们注意到我们的 iOS 应用程序在处理相对较大的文件 (>100 MB) 以及 Postman 时会发生这种情况。我们的 Android 应用程序似乎运行良好,甚至可以上传更大文件大小的文件; 1GB 以上。我已经与我们的服务器管理员进行了协调,他说服务器配置设置为合理的水平。我相信他,因为我们的 Android 应用成功上传了一个更大的视频。
我已将问题隔离到下面的相关代码中:
if (!is_uploaded_file($_FILES['filedata']['tmp_name']))
//... Respond with status code 400 an error message.
我进行了一些挖掘,发现从我们的 iOS 应用和 Postman 发送的上传会导致错误代码 3,根据文档,这意味着 UPLOAD_ERR_PARTIAL。
有趣的是,如果我们的 iOS 应用程序和 Postman 使用较小的文件(例如 8-20 MB 左右)上传文件非常好,而且我很确定它可以轻松处理更大的文件,因为我们的 Android 应用程序能够成功上传一个 1 GB 的大文件。
我的直觉告诉我,这与 Android、Postman 和 iOS 在处理文件上传方面的差异有关,但我不确定从哪里开始或从哪里询问我们的移动应用程序开发人员(他们也继承了他们的项目) 看。
【问题讨论】:
标签: php ios file-upload postman php-7.3