【发布时间】:2021-03-16 16:45:47
【问题描述】:
好的,所以基本上我想要在我发送我的帖子请求之后的响应标头。
这是我的发送邮政编码
pDataInfo->recvHeadBuff = (char*)VirtualAlloc(NULL, 4096, MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE);
InitPost(pDataInfo);
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 5L);
curl_easy_setopt(curl, CURLOPT_URL, pDataInfo->URL);
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, pDataInfo->PostData.c_str());
curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, header_callback);
curl_easy_setopt(curl, CURLOPT_HEADERDATA, pDataInfo->recvHeadBuff);
curl_easy_perform(curl);
curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &pDataInfo->repCode);
k 所以我在这里尝试创建一个缓冲区,用于我的用户数据*
回调函数:
static size_t header_callback(char* buffer, size_t size,
size_t nitems, void* userdata)
{
strcpy((char*)userdata, buffer);
std::cout << (char*)userdata; // This prints the headers correctly
return nitems * size;
}
现在我认为我的缓冲区会被头部缓冲区中的字符填充,但是当我尝试从这个回调函数外部再次计算缓冲区时,我什么也得不到。
基本上需要帮助来使用用户数据和缓冲区来将我的变量从这个函数中取出,即它的 noobxd。
【问题讨论】: