我目前正在开发一个项目,该项目对其需要的数据执行大量 HTTP 请求。它的工作原理是将所有数据写入缓冲区,然后将该缓冲区返回给调用者。似乎等待整个文件下载基本上可以流式传输的数据是一个坏主意。
问题 1:是否已经有一个库/公共代码可以发出 HTTP 和经过身份验证的 HTTP 请求作为流工作?
问题2:如果没有这样的库,为什么不呢?有没有理由从来不需要这样的东西?
我目前正在开发一个项目,该项目对其需要的数据执行大量 HTTP 请求。它的工作原理是将所有数据写入缓冲区,然后将该缓冲区返回给调用者。似乎等待整个文件下载基本上可以流式传输的数据是一个坏主意。
问题 1:是否已经有一个库/公共代码可以发出 HTTP 和经过身份验证的 HTTP 请求作为流工作?
问题2:如果没有这样的库,为什么不呢?有没有理由从来不需要这样的东西?
让boost::asio做到这一点并不难,但据我所知,它没有内置 HTTP 协议(而且我想不出有这样的库,或者为什么不),因此您必须编写标题/正文解析(可能很乏味且容易出错)。
一些谷歌搜索对此进行了一些尝试,就像这样。
我不知道现有的库,但是用Boost.Iostreams包装Curl(或WinInet,如果那是你的一杯茶的话)应该不会太难。
这似乎是您正在寻找的: