首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Curb gem中设置limit-rate选项?

如何在Curb gem中设置limit-rate选项?
EN

Stack Overflow用户
提问于 2011-08-28 17:24:02
回答 1查看 529关注 0票数 0

我想为Curb gem (curl的ruby接口)的下载设置--limit-rate选项。

在卷曲中:

代码语言:javascript
复制
curl --limit-rate 10K http://server/large_file.rar

对于Curb的下载,我有这样的代码(加上进度条,但这与这个问题无关):

代码语言:javascript
复制
require 'rubygems'
require 'curb'

request = 'http://server/large_file.rar'    
filename = 'large_file.rar'

f = open(filename, 'wb')

c = Curl::Easy.new(request) do |curl|    
  curl.on_body { |d| f << d; d.length }
end

c.perform

f.close

如何在此脚本中设置--limit-rate选项?据我所知,没有简单的方法(我已经阅读了rdoc并做了一些谷歌搜索)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-30 00:50:22

您可以通过在libcurl中设置CURLOPT_MAX_RECV_SPEED_LARGE来完成此操作。通过curb应用程序接口,您可以执行以下操作:

代码语言:javascript
复制
c = Curl::Easy.new(request) do |curl|
  curl.set(:max_recv_speed_large, download_limit)
  curl.on_body { |d| f << d; d.length }
end

其中,download_limit是以字节/秒为单位的最大下载速率的整数。

有关更多信息,请访问:http://curl.haxx.se/libcurl/c/curl_easy_setopt.html#CURLOPTMAXRECVSPEEDLARGE

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7220073

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档