2012-05-09 11 views
6

私はPhonegap [cordova 1.7.0]を使用して、Xcode [ios5]を使用してファイルをダウンロードしています。 これは私がファイルをダウンロードするために使用しているコードです:ファイルをダウンロードします。エラー2、FileTransferError.INVALID_URL_ERR

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 

私は、URLを変更しましたが、それは同じエラーを与えました。何が間違っているか知っていますか?

PS:私は、&は)=

感謝を以下の答えを追加した問題を知っていました。

答えて

4

誰もがここで、同じ問題に直面している場合にはその答えです:あなたはちょうどそれが中にダウンロードされますことを、フォルダのパスを追加しないでください

ファイルをダウンロードするには、あなたも追加する必要がありますファイル自体のパス。

"Documents"にjpgイメージをダウンロードする場合、ファイルパスは "Document" + "。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%正しいかではありませんが、それは私のために働いたものだ,,,それが役に立てば幸いかどうかわからないありません=)

+3

大ヘルプ。まったく同じエラーがあり、ドキュメントがまったく役に立たない。彼らがあなたに与えるのは、 "変数urlにはサーバー上のファイルへの有効なURIが含まれており、filePathはデバイス上の有効なパスであると仮定します"。ありがとうございました。 – XML

+0

ドキュメントからvar名を使用するには:fileSystem.root.fullPath + '/frog.jpg'; //スラッシュがありません – pdschuller

0

申し訳ありませんが、私はミスを犯し、エラーコード2がINVALID_URL_ERRでなければなりません。 だから、あなたがテストのために、通常のURL(ない90ポートが、80ポート)を試すことができ、

「のhttp:// 184.172.195.202/ElmNoor/Documents/1.txt "、 persistent_root.fullP ath + "/" + "1.txt"、//注意、追加する必要があります

正常にダウンロードする必要があります。

0

このエラーは、FileTransferError.INVALID_URL_ERRというエラーが表示されています。これは、ダウンロードしたファイルを保存しようとしているパスが正しくないことを意味します。

パスをconsoleに出力してクロスチェックしてください。

PS:ダウンロードしているURLが正しいことを、通常のブラウザで確認して確認できます。

関連する問題