可以在cURL中自定义文件读取回调函数吗?

时间:2012-05-10 02:14:39

标签: post curl libcurl multipartform-data

我想用cURL上传文件。而不是硬盘上的现有文件,它在内存中(是的,我在运行时编写文件并想要消除临时文件)。

IIRC,使用cURL,我们可以在发送普通的帖子数据时自定义读回调函数。那么在读取文件时我们可以使用类似的机制来自定义回调函数,特别是当与多部分帖子一起使用时?

谢谢,最诚挚的问候!

1 个答案:

答案 0 :(得分:0)

是的,curl_formadd的CURLFORM_STREAM是你的朋友:

  

告诉libcurl使用CURLOPT_READFUNCTION回调来获取数据。   传递给CURLFORM_STREAM的参数是传递给的指针   读回调的第四个参数。如果你想要部件看起来像   文件上传一个,也设置CURLFORM_FILENAME参数。注意   当使用CURLFORM_STREAM时,CURLFORM_CONTENTSLENGTH也必须是   设置部件的总预期长度。 (选项添加于   libcurl 7.18.2)