我需要编写一个HTTP客户端,它会定期下载(并在磁盘上转储)比可用内存大得多的文件。
此任务的最合适策略和HTTP客户端库是什么?
没有像Akka这样没有笨重依赖性的lib的加号。
答案 0 :(得分:2)
我找到了一个合理的解决方案,不需要添加任何外部依赖。只有Scala / Java标准库。
import sys.process._
import java.net.URL
import java.io.File
new URL("http://download.thinkbroadband.com/1GB.zip") #> new File("/tmp/1gb.zip") !!
奖金:添加一些标题和条件获取请求
import sys.process._
import java.net.URL
import java.io.File
val url = new URL("http://download.thinkbroadband.com/1GB.zip")
val conn = url.openConnection
conn.setRequestProperty("Accept","text/json")
conn.setIfModifiedSince(new Date().getTime - 1000*60*30)
url #> new File("/tmp/1gb.zip") !!