在浏览器 Elixir 中下载分块文件失败

Download failes for chuncked file in browser Elixir

显然,我似乎缺少要添加到我的代码中的内容。我正在发送一个分块的 HTTP 响应,内容类型为 text/csv,这样如果我在浏览器中打开它,它就会下载。但是它下载失败,我在学习 elixir 时不知道它的解决方案。这是我正在尝试的代码。你能帮我解决这个问题吗?

get "/dbs/foo/tables/source" do
  conn
  |> put_resp_content_type("text/csv")
  |> send_chunked(206)
  |> foo_data
end


  defp foo_data(conn) do
    Enum.reduce_while(["every-","word-","is-","a-","chunk"], conn, fn (chunk, conn) ->
      case Plug.Conn.chunk(conn, chunk) do
        {:ok, conn} ->
          {:cont, conn}
        {:error, :closed} ->
          {:halt, conn}
      end
    end)
  end

邮递员

chrome

我发现我做错了什么。我发送的是状态代码 206 而不是 200。归功于指出我的@NobbZ(Slack)。更改状态代码后,它按预期工作。