我是Haxe的新手,对于我的第一个项目,我想编写一个从服务器下载文件的简单程序。我以C ++为目标。
我一直在关注 haxe.Http
,但我认为它不适合二进制数据,它有一个onData
和responseData
属性,但这些都是字符串。我也不认为它适合大文件,因为它将所有响应数据存储在内存中。
haxe.Http
吗?sys.net.Socket
编写自己的HTTP解析器吗?答案 0 :(得分:2)
如果你是Haxe的初学者,作为一个简单的开始我只会尝试使用同步(阻塞)方式,因为它非常简单,然后将内容写入文件以检查它是否真的有效在C ++中。
例如:
class TestHttp {
public static function main() {
var content : String = haxe.Http.requestUrl("http://somedomain/path/to/file");
sys.io.File.write("/path/to/some/local/file", true).writeString(content);
trace(content.length + " bytes downloaded");
}
}
如果这在C ++中适合您,那么您可以花更多时间编写异步解决方案,使用onData甚至套接字。我暂时不编写异步解决方案,因为它需要你的程序有一个无限循环(而(true))并且我不太确定你是否已经有一个主循环。