0

我在尝试使 libcurl 适应特定情况时遇到了困难。我所做的实际上是将可变数量的对象加载到内存中,对它们执行各种转换,然后我想将它们(当然是序列化的二进制数据)作为多部分帖子的一部分上传。

我正在苦苦挣扎的部分是,我只想在它们完成此管道时将它们添加为一部分,然后在发布该特定部分后将其删除。

我考虑过可能给它一个读取函数 ptr,并且在回调上可能手动向缓冲区提供部分标题和数据?这种方法似乎是一种 hack。

我已经尝试过常规的多部分方法(使用多句柄),但这似乎需要预先准备好所有数据,或者从文件中读取。我不希望 libcurl 处理。

回顾一下,我想打开一个连接,启动 http multipart post request -> 进入内存缓冲区 -> 添加为 post attatchment (multipart) -> 将其发送出去 -> 等待下一个数据块 -> 重复直到完成。

先谢谢了。

4

1 回答 1

0

使用该curl_formadd()功能准备一个multipart/form-dataHTTP 帖子,然后使用该CURLOPT_HTTPPOST选项实际发送它。 curl_formadd()具有CURLFORM_STREAM启用连接CURLOPT_READFUNCTION回调的选项,因此您可以自定义流式传输每个多部分的数据。

于 2013-02-13T21:04:17.700 回答