6

我正在使用 Phonegap[cordova 1.7.0] 通过 Xcode[ios5] 下载文件。这是我用来下载文件的代码:

   function downloadfile(){
   var fileTransfer = new FileTransfer();
   console.log('the type of root is:');
   fileTransfer.download(
                  "http://184.172.195.202:90/ElmNoor/Documents/1.txt",
                  persistent_root.fullPath,
                  function(entry) {
                  alert("I'm Downloading");
                  console.log("download complete: " + entry.fullPath);
                  },
                  function(error) {
                  alert("I'm not downloading");
                  console.log("download error source " + error.source);
                  console.log("download error target " + error.target);
                  console.log("upload error code " + error.code);
                  }
                  );}

但我得到错误代码 2 & 我不知道我能解决它吗?

这是我的日志:

     HelloPhoneGap[933:13403] File Transfer Finished with response code 200
     HelloPhoneGap[933:13403] [INFO] download error source http://184.172.195.202:90/ElmNoor/Documents/1.txt
     HelloPhoneGap[933:13403] [INFO] download error target /Users/weekend/Library/Application Support/iPhone Simulator/5.1/Applications/A7883F4B-7678-    4424-A93A-77747297A11E/Documents
     HelloPhoneGap[933:13403] [INFO] upload error code 2

我更改了网址,但它给出了同样的错误。你知道出了什么问题吗?

PS:我知道问题并在下面添加了答案=)

谢谢。

4

3 回答 3

4

如果有人遇到同样的问题,这里是答案:

要下载文件,您不应该只添加将要下载的文件夹的路径,还应该添加文件本身的路径。

因此,如果您将 jpg 图像下载到“文档”,则文件路径应为:“文档”+“.jpg”。

这是修改后的代码:

   function DownloadFile(){
   var fileTransfer = new FileTransfer();
   var url ="http://www.ranafrog.org.au/f006.jpg";
   var folderpath=persistent_root.fullPath+"frog.jpg"; //The path is added here.
   var onSuccess= function(entry){
   console.log("download complete: " + entry.fullPath);
};

var onError=function(error) {
    console.log("download error source " + error.source);
    console.log("download error target " + error.target);
    console.log("upload error code " + error.code);
};

fileTransfer.download(url,folderpath,onSuccess,onError);
} 

我不确定我所说的是否 100% 正确,但这对我有用 ,,, 所以希望它有所帮助 =)

于 2012-05-09T12:33:31.750 回答
0

这个错误说的是 - 你有一个FileTransferError.INVALID_URL_ERR错误。这意味着您尝试保存下载文件的路径不正确。

通过将路径输出到console.

PS:您可以通过在普通浏览器中尝试验证您下载的URL是否正确。

于 2013-03-16T05:58:03.183 回答
0

对不起,我弄错了,错误码2应该是INVALID_URL_ERR; 所以,你可以尝试一个普通的url(不是90端口而是80端口)进行测试,

"http://184.172.195.202/ElmNoor/Documents/1.txt", persistent_root.fullPath + "/" + "1.txt", //注意,必须加

应该可以正常下载了。

于 2012-05-11T03:06:27.207 回答