如何下载文件并将其存储在本地?我搜索了doc和google,但找不到它的一个例子。
我试过了:
this.copyRemote = function(path,path2){
reader = Ti.Network.createHTTPClient();
writer = Ti.Filesystem.getFile(path2);
reader.open('GET',path);
reader.receive(writer);
}
但是Tidesdk在尝试下载文件时崩溃了,控制台上的最后一条消息是:
[12:42:39:647] [Ti.Network.HTTPClient] [Debug] Changing readyState from 0 to 1 for url:https://buttonpublish.com/api/images/7/image257189x142.jpg
[12:42:39:671] [Ti.Proxy] [Debug] Looking up proxy information for: https://buttonpublish.com/api/images/7/image257189x142.jpg
[12:
答案 0 :(得分:2)
似乎TideSDK Google Group使用以下代码取得了成功:
var httpClient = Ti.Network.createHTTPClient();
httpClient.open('GET', path);
httpClient.receive(function(data) {
var file = Ti.Filesystem.getFile(path2);
var fileStream = file.open(Ti.Filesystem.MODE_APPEND);
fileStream.write(data);
fileStream.close();
});
希望这有助于,至少指出正确的方向。
答案 1 :(得分:0)
我发现这适用于我的需要,这只是为了将文件放到机器上:
function downloadFile( url ){
Ti.Platform.openApplication( url );
}
这将使用计算机的默认浏览器打开URL。这种方法的一个缺点是通常会提示用户确认下载。我使用downloadFile函数,以防我希望将来改变它的工作方式。