我正在寻找一个库来处理多个并发 HTTP 连接(首选在单个线程上)以在 Windows 中的 C++ 中使用,以便它可以基于 Win32 API。这适用于必须处理请求列表但始终保持 4 运行直到列表完成的客户端应用程序。
到目前为止,我已经尝试过 cURL(多接口(interface)),这似乎是我发现的最合适的方法,但我的问题是我可能有一个包含 200 个请求的队列,但我一次只需要运行其中的 4 个.当一个请求可能需要 2 秒而另一个请求可能需要 2 分钟时,这就会成为问题,因为您必须等待所有句柄并在一个 block 中接收所有请求的结果。如果有人知道解决这个问题的方法,那将非常有用。
我也尝试过使用 WinHTTP 自己滚动,但我需要限制请求,以便理想情况下它们需要在单个线程上并使用 WinHTTP 不执行的数据回调。
我发现可以解决我所有问题的最好的方法是 ASIHTTPRequest,但不幸的是它仅适用于 Mac OSX。
谢谢, J
最佳答案
你看过 boost.asio 了吗? http://www.boost.org/doc/libs/1_46_1/doc/html/boost_asio.html
它旨在很好地扩展并具有 http 服务器示例: http://www.boost.org/doc/libs/1_46_1/doc/html/boost_asio/examples.html
关于用于处理多个 HTTP 连接的 C++ 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5283634/