我正在使用 libcurl 构建 HTTP POST,使用 struct curl_httppost 和 curl_formadd 等。
我需要能够计算将要发布的全部内容的 MD5 哈希值,包括边界标记等。然后需要将该 MD5 作为 HTTP header “Content-MD5”上传。
有没有办法从 curl API 获取原始帖子内容,以便我可以在发布之前计算其 MD5?或者,curl 中是否已经存在一种机制来简单地计算 MD5 并在内部设置 header ?
struct curl_httppost* list = NULL;
struct curl_httppost* last = NULL;
curl_formadd (&list, &last,
CURLFORM_COPYNAME, pFieldName,
CURLFORM_BUFFER, pFieldFilename,
CURLFORM_BUFFERPTR, pFileContents,
CURLFORM_BUFFERLENGTH, lenFileContents,
CURLFORM_END);
curl_easy_setopt(session, CURLOPT_URL, url);
curl_easy_setopt(session, CURLOPT_HTTPPOST, list);
谢谢。
最佳答案
显然答案是通过 curl_formget 检索内容。从那里,我可以计算 MD5 哈希值并设置 header 。
关于c++ - 从 libcurl 为 HTTP POST 计算 Content-MD5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4589105/