我想知道是否有办法直接使用具有带文件上传输入的HTML表单的UIWebview从应用程序主页上传文件。
我正在从UIWebview加载:
<form action="test.php" method="post" enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file"><br>
<input type="submit" name="submit" value="Submit">
</form>
但iPhone询问我是否要“拍照”或“选择现有”。我宁愿做的是选择应用程序本地目录中的文档或图像。
这可能吗?
谢谢!
答案 0 :(得分:1)
我也在寻找答案。在我自己挖掘之后,似乎唯一的方法就是:
答案 1 :(得分:0)
在iOS上,无法“浏览文件系统”,因此您无法使用UIWebView中的表单附加照片以供上传。
你将不得不 -
UIImagePickerController从相册中获取照片。
确定提交表单的POST标头
将图像编码为NSData
使用NSURLConnection编写POST请求,并将NSData对象插入正确的标题
答案 2 :(得分:0)
我遇到了类似的问题,我发现IOS中的UIWebView元素不支持html元素:
我不确定为什么Apple选择不支持这个重要的html元素,但我相信他们有他们的理由。 (即使这个元素在IOS上的Safari上完美运行。)
在许多情况下,当用户在UIWebView中单击此类按钮时,它将允许他们拍摄/选择照片。但是,IOS中的UIWebView无法在提交表单时将这样的文件附加到POST数据中。
解决方案:要完成相同的任务,您可以使用触发UIImagePickerController的按钮在InterfaceBuilder中创建类似的表单。然后,您创建一个包含所有表单数据和图像的HTTP POST请求。它并不像听起来那么难,请查看下面的链接,了解一些完成工作的示例代码:ios使用HTTP POST上传图像和文本