使用UIWebView上传照片

假设我在远程服务器上有一个网页(比如filebrowse.html),有一个浏览文件button,我想通过一个UIWebView访问这个页面,并从我的画廊上传照片。 (画廊在iPhone上)

这可能吗?

在iOS上,没有办法“浏览文件系统”,因此您无法使用UIWebView中的表单来附加上传照片。 答案是相当复杂的,但是这里是:

你将不得不 –

  1. UIImagePickerController从照片相册中获取图片。
  2. 确定提交表单的POST标题
  3. 将图像编码为NSData
  4. 用NSURLConnection编写一个POST请求,将NSData对象插入正确的头部

我不能给你所有这些代码,因为它需要分解成所有这些步骤。

嗯 – 有趣。 您是否尝试过在本地Safari中访问该页面? 它会让你浏览电话吗? 如果没有(我假设你在这里构build一个应用程序),你可以使用一个POST的问题的forms(使用curl和浏览器Web检查器找出你需要的参数等)。

这可能会有所帮助,它会告诉你如何从webview中select一张照片,而不使用<form></form> <input type="file" /> <form></form>