Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Cordova/Phonegap FileTransfer.upload()错误代码=1(文件\u未找到\u错误)_Javascript_Cordova_Phonegap Plugins_Phonegap Build_Cordova Plugins - Fatal编程技术网

Javascript Cordova/Phonegap FileTransfer.upload()错误代码=1(文件\u未找到\u错误)

Javascript Cordova/Phonegap FileTransfer.upload()错误代码=1(文件\u未找到\u错误),javascript,cordova,phonegap-plugins,phonegap-build,cordova-plugins,Javascript,Cordova,Phonegap Plugins,Phonegap Build,Cordova Plugins,真正令人困惑的是,当我用手机摄像头拍摄图像时,我使用FileTransfer.moveTo,它会根据需要将图像发送到SD卡上的指定文件夹。我还在localStorage中保留了一个图像对象列表,如下所示: [ Object ean: "42208556" image: "file:///storage/sdcard0/PhotoscanPhotos/d51b5b77-aab1-9947-096d-b0a92dfb87eafoto.jpg" timestamp: 1396441761000 __p

真正令人困惑的是,当我用手机摄像头拍摄图像时,我使用
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使用相同的参数会导致上述错误

我的功能几乎是(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);
}

我相信设置
options.chunkedMode=false
解决了文件上传过程中的大多数问题,也许可以尝试一下。

我想尝试的是: 1.使用上载模式(最后为true)

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

  • 尝试先将数据移动到设备的本地存储,而不是使用SD卡存储。也许这是一个许可的情况,你可以从手机本地存储上传

  • 确保该映像未作为imagesource挂起在另一个映像中,并且您具有对数据的完全访问权限。也许读写是必需的


  • 服务器端脚本错误。。。当然,我应该考虑到明显的
    FileTransferError.FILE\u NOT\u FOUND\u ERR
    错误消息,才明白这一点。为浪费大家的时间表示歉意,并感谢您的努力。

    谢谢,但我以前试过,但没用。我应该在我的OP中提到它。我现在将编辑相同的。我已经用其他东西替换了图像src,只是为了看看在应用程序上显示图像是否是问题,但不幸的是没有任何更改。关于本地存储,它对于我的需求来说太小了(上限为5.7MB iirc)。也尝试了独占模式,但没有效果。谢谢你的帮助。你能回答我的问题吗?这个问题已经有一段时间了,但我只是想知道,你是说服务器端错了,但是文件传输调用的是错误代码1???找不到该文件,但它是服务器端的某个文件?我只是感到困惑,因为我也有一个错误代码1。但不确定是什么原因造成的。@John嗨,John,我说“自然”时忘记了/s标签。。。不幸的是,phonegap的代码没有任何帮助