2016-12-29 8 views
0

私はhttp.getFile関数を使用して、apiからファイルをダウンロードしています。 getFileに渡されたURLが無効であるか、エラーを返しても、ファイルがまだ作成されている問題が発生しています。いくつかの研究の結果、getFileは常に新しいファイルを作成するようですが、URLが無効な場合、getFileが新しいファイルを作成しないようにする方法はありますか?http.GetFileを使用して不正なURLリクエストが新しいファイルを作成するのを防ぐ方法

私が考えることのできる唯一の解決策は、getFileを呼び出してデータサイズがない場合はファイルサイズを確認することです。

以下の例では、File.existsを使用していましたが、常にtrueを返します。

return http.getFile(fullUrl, filePath) 
.then(function(r){ 

    // Test - Check if file Exists 
    console.log("Check File Exist: " + fs.File.exists(filePath)); 
}, function(error) { 
}); 

答えて

0

"fullurlを" が要求する前に有効なURLである場合にだけチェック:

var regexp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/ 
var isUrlValid = regexp.test(fullUrl); 
if(isUrlValid){ 
http.getFile(fullUrl, filePath) 
} 
+0

感謝を。もう少し明確にすると、URLは実際に正しくフォーマットされています。私はURLがエラー応答を返すかもしれないケースをキャッチしようとしています。セッションが期限切れの場合や、要求されたファイルがサーバーに存在しない場合も同様です。 – naoki

関連する問題