我正在尝试使用curl上传数据。我需要上传二进制数据。
不幸的是,我认为curl首先将文件二进制文件加载到内存中,所以对于大型文件来说这是一个问题。我使用的系统内存非常少,因此即使是8MB大的文件也很难使用,我得到:
curl: option --data-binary: out of memory curl: try 'curl --help' for more information
我试过分块的方法,但似乎也不管用。
到目前为止,我正在尝试:
curl --insecure -v --max-time 1200 ... --data-binary @/tmp/sd/record/....mp4 --header Transfer-Encoding: chunked -o UPLOAD_TOKEN -D Media_Binary_Data https://....upload
有没有办法可以阻止文件将二进制文件加载到内存中,或者强制它将这些数据存储在SD卡中并从中读取?
内存不足的原因是--数据和它的朋友都在将数据发送到服务器之前将其读入内存。你可以通过做-t-x post来轻松解决这个问题,但我仍然相信你在最初的-f测试中已经出错了。
发件人: https://github.com/curl/curl/issues/1385