ios - iOS 的 html5 文件上传问题

标签 ios html multipartform-data

我在 iOS 中使用 HTML5 上传文件时遇到问题。在桌面上我可以愉快地选择多个文件并上传。但是在 iOS 6.0(我测试过的唯一 iOS)上,如果我尝试上传 2 个文件,它会上传第一张图片两次。无论它们是在同一输入中选择的,还是表单包含不同的输入,都是如此。只要表单有多个文件,就会重复第一个文件,替换其他文件。

下面的代码和具有多个输入字段的类似代码适用于 Android Chrome、Windows IE、Windows Chrome 和 Mac Firefox。

<form class="upload" action="UploadServlet" method="post" enctype="multipart/form-data">
    <fieldset>
        <input id="filename" type="file" name="file" size="10"  multiple/>
        <input id="submitButton" name="submit" type="submit" value="Submit"/>
    </fieldset>
</form>

与多次使用相机相关的不同代码的相同问题:

<form class="upload" action="UploadServlet" method="post" enctype="multipart/form-data">
    <fieldset>
        <input id="filename" type="file" name="name" size="10" capture="camera"/>
        <input id="filename1" type="file" name="name1" size="10" capture="camera"/>
        <input id="submitButton" name="submit" type="submit" value="Submit"/>
    </fieldset>
</form>

非常感谢! 理查德

最佳答案

在一位同事的帮助下,我们追踪到了这一点。事实证明,iOS 传递的所有图像都被赋予了文件名 image.jpg。这导致我的服务器将每个文件保存在彼此之上。一个简单的解决方法是在服务器端动态命名上传的图像。

在一个php后端,我们还发现html的input name属性需要[]即:

<input id="filename" type="file" name="file[]" size="10"  multiple/>

关于ios - iOS 的 html5 文件上传问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18324666/

相关文章:

iphone - 通知中心缺少 iOS 应用程序

javascript - 图像未在 Blade View 中加载

c# - 将图像和数据作为多部分内容上传 - Windows Phone 8

iphone - 如何让 UILocalNotification 在某些日子重复

ios - 为什么我的 Flutter 应用程序无法在带有 Xcode 的 iOS 模拟器上运行?

c# - 在 C# 中用 Regex 替换两个或多个空格

javascript - 如何使用脚本在小部件中执行循环脚本?

spring-mvc - curl / Spring MVC : POST gives MissingServletRequestParameterException

angularjs - AngularJS的多部分请求

ios - 如何在swift5中从WKWebviews预加载WKWebviews