【问题标题】:How to prepare http buffer using curl如何使用 curl 准备 http 缓冲区
【发布时间】:2016-05-10 08:55:29
【问题描述】:

我想使用 curl 以非阻塞模式 send/recv http 数据包。所以我需要使用 curl 来准备缓冲区。准备好缓冲区后,我可以使用curl_easy_send() API 发送该缓冲区。我不想使用curl_easy_perform/curl_multi_perform() API 来避免阻塞操作。

是否有任何 API/程序来准备 http 缓冲区并使用 curl 将其提供给应用程序?

【问题讨论】:

  • 基于this libcurl example code,建议不要使用curl_easy_send()curl_easy_recv()实现HTTP。
  • @SSC 我们如何在非阻塞模式下发送/接收?
  • 在使用 curl 传输到服务器之前,有什么方法可以获取发送缓冲区?

标签: c++ c json curl libcurl


【解决方案1】:

首先,curl_multi_perform() 没有阻塞。

其次,libcurl 不会公开您要求的此类内部结构。反正你真的不需要那个。

第三:正如 cmets 中已经提到的:我们强烈建议不要使用 curl_easy_recv / curl_easy_send 实现 HTTP(S)。不仅因为现有的 API 已经为您完成并经过实战证明,还因为要正确完成它需要大量的工作。

【讨论】:

    猜你喜欢
    • 2013-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-29
    • 1970-01-01
    相关资源
    最近更新 更多