【发布时间】:2013-11-17 21:08:04
【问题描述】:
我正在尝试测试“curl-multi”gem 以发出 http 请求:
puts Benchmark.measure {
require 'curl-multi'
# make multiple GET requests
easy_options = {:follow_location => true}
multi_options = {:pipeline => true}
Curl::Multi.get("http://www.google.com/","http://www.google.com/","http://www.google.com/", easy_options, multi_options) do|easy|
# do something interesting with the easy response
puts easy.last_effective_url
end
}
但是有一个奇怪的错误:
/Users/bmalets/.rvm/gems/ruby-1.9.3-p448/gems/curl-multi-0.2/lib/curl-multi.rb: In function ‘add_to_curl’:
/Users/bmalets/.rvm/gems/ruby-1.9.3-p448/gems/curl-multi-0.2/lib/curl-multi.rb:238: warning: ISO C90 forbids mixed declarations and code
/Users/bmalets/.rvm/gems/ruby-1.9.3-p448/gems/curl-multi-0.2/lib/curl-multi.rb:243: error: ‘struct RString’ has no member named ‘len’
/Users/bmalets/.rvm/gems/ruby-1.9.3-p448/gems/curl-multi-0.2/lib/curl-multi.rb: In function ‘c_select’:
/Users/bmalets/.rvm/gems/ruby-1.9.3-p448/gems/curl-multi-0.2/lib/curl-multi.rb:287: error: ‘struct RArray’ has no member named ‘len’
/Users/bmalets/.rvm/gems/ruby-1.9.3-p448/gems/curl-multi-0.2/lib/curl-multi.rb:288: error: ‘struct RArray’ has no member named ‘ptr’
/Users/bmalets/.rvm/gems/ruby-1.9.3-p448/gems/curl-multi-0.2/lib/curl-multi.rb:292: error: ‘struct RArray’ has no member named ‘len’
/Users/bmalets/.rvm/gems/ruby-1.9.3-p448/gems/curl-multi-0.2/lib/curl-multi.rb:293: error: ‘struct RArray’ has no member named ‘ptr’
/Users/bmalets/.rvm/gems/ruby-1.9.3-p448/gems/curl-multi-0.2/lib/curl-multi.rb:302: warning: implicit conversion shortens 64-bit value into a 32-bit value
我该如何解决?
【问题讨论】:
标签: ruby curl httpclient libcurl curl-multi