CURLing的最佳RoR方法

时间:2011-10-14 22:19:39

标签: ruby-on-rails ruby curl

我在PHP中有以下代码。我正在寻找将其转换为Ruby的最佳方法。我看了几个方法,包括open-uri和curb and wrapper curb-fu库。 open-uri看起来不太好,但我真的很喜欢curb-fu方法。但是,我有一种使用两个库的感觉是过度的,必须有一种更简单的方法来完成这段代码所做的事情。

 #Setup connection
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $resource_uri);
    curl_setopt($curl, CURLOPT_HEADER, 0);
    curl_setopt($curl, CURLOPT_USERPWD, $site_public_key . ":" . $site_private_key);
    curl_setopt($curl, CURLOPT_TIMEOUT, 15);
    curl_setopt($curl, CURLOPT_VERBOSE, 0);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 1);
    curl_setopt($curl, CURLOPT_FAILONERROR, 0);

    #Send request
    $result_json = curl_exec($curl)

1 个答案:

答案 0 :(得分:3)

最好的办法是使用rest-client。它的api非常酷且轻巧:

result = RestClient::Request.new({:user => "username", :password => "password", 
                      :method => :get, :url => "www.whatever.com"}).execute

或者如果您不需要身份验证,则可以执行以下操作:

result = RestClient.get("http://www.whatever.com")