我正在使用http.getFile
函数从API下载文件。即使传递给getFile
的URL无效或返回错误,我仍存在一个仍会创建文件的问题。经过一项研究,getFile
似乎总是会创建一个新文件,如果URL无效,是否有办法防止getFile
创建新文件?
我可以认为唯一的工作是在调用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) {
});
只需在请求之前检查" 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)
}