iPhone文件上传器插件(PhoneGap)

iPhone文件上传器插件(PhoneGap),iphone,cordova,file-upload,Iphone,Cordova,File Upload,我正在尝试使用将图像从iPhone上传到我的服务器 如何准确地使用uploadByUri函数?我不明白所有的参数 FileUploader.prototype.uploadByUri("http://www.mysite.com/images/", imageURI, params, fileKey, "myimage", "image/jpg", uploadSuccess, uploadFail, uploadProgress) 对于“params”和“filekey”我使用什么?自述文件

我正在尝试使用将图像从iPhone上传到我的服务器

如何准确地使用uploadByUri函数?我不明白所有的参数

FileUploader.prototype.uploadByUri("http://www.mysite.com/images/", imageURI,
params, fileKey, "myimage", "image/jpg", uploadSuccess, uploadFail, uploadProgress)
对于“
params
”和“
filekey
”我使用什么?自述文件显示:

  • 文件的fileKey参数名称
  • 带key的params对象:要发送到服务器的值params
现在,我正在将
null
放入目标文件夹中,没有错误,但目标文件夹中没有图像

另外,您知道我是否可以直接从相机上传base64编码字符串的图像,而不是相册中的图像

谢谢你的帮助


Roberto

fileKey是服务器所需的文件字段的名称。因此,如果您通过web应用程序上载文件,您将有一个
,服务器将查找“fileKey”以获取文件数据

我相信Params是没用过的


我认为上传base64编码的图像就像上传文本文件一样。在服务器上,您需要将其转换为图像文件。

嗯,我花了3天时间才发现FileUploader没有进行ftp上载,服务器目标实际上不是文件夹,而是服务器端脚本。我将回答我的问题,以防有人需要帮助

下面是一个裸体php脚本,用于通过FileUpload保存“上传”的图像

<? 
// the actual uploaded image 
$uploaded_image = $_FILES['image']['tmp_name']; 
// the uploaded image name 
$uploaded_image_name = $_FILES['image']['name']; 
// location where you want to save the image 
$saved_image = "my_images/$uploaded_image_name"; 
// saves the image 
move_uploaded_file($uploaded_image, $saved_image); 
?> 
请注意,我的fileKey参数是“image”,因为我正在上载图像。这与
$\u文件['image']['tmp\u name']
$\u文件['image']['name']
匹配

确保在您的www文件夹中复制'fileUploader.js',但在插件文件夹中复制'fileUploader.h'和'fileUploader.m'。(不要复制FileUploader文件夹本身)


罗伯托只想更新一下。Phonegap现在有了一个文件api,它似乎做了filuploader插件所做的事情:

谢谢你的回答,但我认为缺少了一个词:“你会有一个,服务器会”。我仍然不明白fileKey是关于什么的。服务器需要哪个字段?我已经指定了一个目标文件名(“myimage”)和源文件(imageURI)…我在回答中加入了一些html,它将其删除!在HTML页面中,您将有一个具有type=“file”和name=“fileKey”属性的输入元素。因此,如果您的服务器代码是从常规网页发布的,那么它将期望一条包含由“fileKey”name属性标识的文件数据的POST消息。
window.plugins.FileUploader.uploadByUri("http://www.yourserver.com/your_php_script.php", your_actual_image, null, "image", "my_image.jpg", "image/jpg", uploadSuccess, uploadFail, uploadProgress);