首页 > 解决方案 > 使用分块请求时如何强制关闭 excon 连接

问题描述

我正在尝试读取我请求的每个图像的第一块,以获取我能够执行的 mime 类型和大小。

但是,当我使用 Connection#reset 时,它不会终止连接并继续下载下一个块。

我只是想知道是否可以在获得第一个块后关闭连接?

这是我现在的代码

streamer = lambda do |chunk, _remaining_bytes, total_bytes|
  image_format = MimeMagic.by_magic(chunk)
  # other code
  @connection.reset
end

Excon.defaults[:chunk_size] = 25
@connection = Excon.new(image_url)
@connection.get(response_block: streamer)

标签: ruby-on-railsrubyexcon

解决方案


我不相信目前有办法在分块响应结束之前停止。话虽如此,您可能可以从头请求中获取您想要的数据并避免需要获取请求?


推荐阅读