Cordova/Phonegap FileTransfer.upload() 错误代码 = 1 (FILE_NOT_FOUND_ERR)

Posted

技术标签:

【中文标题】Cordova/Phonegap FileTransfer.upload() 错误代码 = 1 (FILE_NOT_FOUND_ERR)【英文标题】:Cordova/Phonegap FileTransfer.upload() error code = 1 (FILE_NOT_FOUND_ERR) 【发布时间】:2014-04-02 14:47:13 【问题描述】:

真正令人困惑的是,当我使用手机摄像头拍摄图像时,我使用 FileTransfer.moveTo 并根据需要将图像发送到我 SD 卡上的指定文件夹。我还在localStorage 中保留了一个图像对象列表,看起来像这样:

[
Object
ean: "42208556"
image: "file:///storage/sdcard0/PhotoscanPhotos/d51b5b77-aab1-9947-096d-b0a92dfb87eafoto.jpg"
timestamp: 1396441761000
__proto__: Object
etc etc

作为我的应用程序的一部分,我使用相同的 image[i].image 作为 src 属性来动态地将图像添加到列表中,它工作正常。但是,对FileTransfer.upload 使用相同的参数会出现上述错误。

我的函数几乎是 API docs (Cordova 3.1) 的复制品。代码如下:

function uploadImagesAsJpegs(imageObject) 
    var options = new FileUploadOptions();
    options.fileKey = "file";
    options.fileName=imageObject.image.substr(imageObject.image.lastIndexOf('/')+1);
    //alert(options.fileName);//debugging ............we're happy with this
    options.mimeType="image/jpeg";
    options.chunkedMode = true;

    var serverUrl = http://172.17.7.112/mylocalserver;


    var params = ;
    params.value1 = ean;
    params.value2 = imageObject.timestamp;

    options.params = params;

    var fileTransfer = new FileTransfer();

    //alert(encodeURI(serverURL));//debugging  ............we're happy with this
    //alert("image to upload is: " + imageObject.image);//debugging............we're happy with this
    fileTransfer.upload(imageObject.image, encodeURI(serverURL), onUploadSuccess, onUploadFail, options);

【问题讨论】:

【参考方案1】:

我相信设置options.chunkedMode = false;可以解决文件上传过程中的大部分问题,不妨试一试。

【讨论】:

谢谢,但我之前尝试过,但无济于事。我应该在我的 OP 中提到它。现在将编辑相同。【参考方案2】:

我会尝试的是: 1.使用exclusive模式上传(最后为真)

fileTransfer.upload(imageObject.image, encodeURI(serverURL), onUploadSuccess, onUploadFail, 选项, true);

    尝试先将数据移动到设备的本地存储,而不是使用 SD 卡存储。也许这是一个许可案例,您只能从手机本地存储上传。

    确保图像未在另一个图像中作为图像源挂起,并且您对数据具有完全访问权限。也许读写是需要独占的。

【讨论】:

我已经用其他东西替换了图像 src 只是为了看看在应用程序上显示图像是否是问题,但不幸的是没有改变。关于本地存储,它对于我的需求来说太小了(上限为 5.7MB iirc)。也尝试了独占模式,但无济于事。感谢您的帮助【参考方案3】:

服务器端脚本是错误的……鉴于明显的FileTransferError.FILE_NOT_FOUND_ERR 错误消息,我自然应该明白这一点。很抱歉浪费大家的时间,感谢您的努力。

【讨论】:

你能回答我的问题吗? ? ***.com/questions/23060307/… 问题已经有一段时间了,但我只是想知道,你是说服务器端错了,但文件传输正在调用 error_code 1???该文件未找到,但它是服务器端的东西?我很困惑,因为我也有错误代码 1。但不确定是什么原因造成的。 @John 嗨,John,我说 Naturally 时忘记了 /s 标签……不幸的是,phonegap 的代码没有任何帮助

以上是关于Cordova/Phonegap FileTransfer.upload() 错误代码 = 1 (FILE_NOT_FOUND_ERR)的主要内容,如果未能解决你的问题,请参考以下文章

Cordova/PhoneGap - 通过应用商店验证

Cordova/Phonegap 1.6 媒体示例

桌面/移动标准网页中的phonegap / cordova社交共享插件

Cordova/PhoneGap:安装 calendarPlugin 后出现链接器错误

Cordova/Phonegap - 风景

如何添加插件新的cordova /phonegap?