使用curlpp获得响应

时间:2011-06-19 07:10:10

标签: c++ curlpp

我正在使用curlpp来接收回复。我指的是curlpp网站http://curlpp.org/index.php/examples/64-example-14的这个例子。 但我没有得到存储响应的位置,因此我可以将其用于进一步的目的。 代码仅显示请求状态的整数值。 我也经历了谷歌,但无法弄明白。

curlpp::Multi::Msgs msgs = requests.info();

for (curlpp::Multi::Msgs::iterator pos = msgs.begin(); pos != msgs.end(); pos++) 
{
    if (pos->second.msg == CURLMSG_DONE)
    {
        /* Find out which handle this message is about */
        if (pos->first == &request1)
        {
            printf("First request completed with status %d\n", pos->second.code);
        }
        else if (pos->first == &request2) 
        {
            printf("Second request completed with status %d\n", pos->second.code);
        }
    }

2 个答案:

答案 0 :(得分:5)

您可以使用WriteStream选项指定其他流:

std::stringstream result;

request.setOpt(cURLpp::Options::WriteStream(&result));
request.perform();

答案 1 :(得分:1)

阅读前面的示例,默认情况下,当您说它执行到stdout时,或者您可以指定其他流。

来自同一网站的不同示例http://curlpp.org/index.php/examples/48-example-01

myRequest.perform();
os << myRequest;

其中os是自定义输出流

所以对于像这个例子这样的两个流添加像

这样的东西
os1 << request1;
os2 << request2;

获得两个回复