Erlang - 从url下载文件

时间:2018-01-07 18:57:41

标签: erlang

我正在尝试从链接下载文件。现在我按照以下方式进行:

inets:start();
Response = httpc:request(get, {Link, []}, [], []),
  case Response of
    {ok, {{_, 200, "OK"}, Headers, Body}} ->
      file:write_file("dir/filename", Body);
    _ ->
      io:format("Error~n")
  end.

一切都很好并且正常工作。但是,我不确定这是否是最好的方式。对于大文件httpc:request是锁定的,并且没有关于请求发生了什么的信息。有没有更好的方法来下载文件?

1 个答案:

答案 0 :(得分:2)

使用名为Chunked transfer encoding的HTTP选项之一ibrowse库支持它。 Here是使用ibrowse v4.4.0和分块传输编码的文档链接。