libcurl C API > POST 从 URL 获取的数据范围
如何发布从 URL 而不是从文件获取的数据范围?假设我需要从 http://localhost/video.mp4 (A) 读取 150-250000 字节并发布此内容将数据顺利地分块传输到 http://172.32.144.12 (B),使其看起来像数据从 (A) 传输到 (B)?
How can I post ranges of data obtained from URL, not from file? Say I need to read 150-250000 bytes from http://localhost/video.mp4 (A) and POST this data to http://172.32.144.12 (B) in chunks smoothly so that it looked like the data is streamed from (A) to (B)?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
为什么不简单地从 A 开始下载(如果您不需要整个内容,请使用一个范围),一旦您收到足够的数据并将其传递到站点 B,您就可以使用该数据发出单独的请求。同时,您继续从 A 下载到备用缓冲区等。
您可以使用两个线程甚至使用 libcurl 的多接口在同一线程中执行此操作。
Why not simply start downloading from A (using a range if you don't want the whole thing) and once you have received enough data to pass it along to site B, you issue a separate request with that data. Meanwhile you continue downloading from A into an alternative buffer etc.
You can do this using two threads or even in the same thread using libcurl's multi interface.