2016-03-29 10 views
0

Bir httparty isteğini curl isteğine dönüştürmenin bir yolu var mı? Başarısız isteğimi bir curl biçiminde başka bir geliştiriciye gönderebilmeyi çok isterim.Httparty curl

Böyle bir şey düşünüyordum: last_request_as_curl ayıklarken ben API sahibine verebilir bukle dizeye önceki isteği açacak

web_caller = HTTPartyClass.new 
web_caller.hit_api 
web_caller.last_request_as_curl 

.

+0

Açıklamak istediğiniz isteği yapan kodun birazını gösterebilir misiniz? – Caillou

+0

Asıl soru oldukça açık uçluydu. Soruyu bazı bilgilerle güncelledim ve çözümümümü ekledim. Birisi daha iyi biriyle karşılaştıysa, mevcut bir çözümümüz var lütfen paylaşın. – unflores

cevap

1

"..... kıvrılıp -X POST" Ben HTTParty taban sınıftaki bir yöntemi yazdı:

İdeal olarak, last_request_as_curl gibi bir şey dönecekti

def capture_curl(request) 
    options = request.options 
    method = request.http_method.to_s.split(':').last.upcase 
    curl_str = "curl -k -X #{method} " 
    if(options[:basic_auth].present?) 
    curl_str += "-u #{options[:basic_auth].values.join(':')} " 
    end 
    curl_str += 
    "-d " + 
    options[:body] 
     .merge(options[:default_params]) 
     .map{|a,k| "#{a}=#{k}"} 
     .join('&') + " " 
    curl_str += "#{options[:base_uri]}#{request.path.path}" 
    @curl_str = curl_str 
end 

def last_curl 
    @curl_str 
end 

O zaman bir yöntemi var yanıt nesnesini işler ve bu yöntemde response.request'u capture_curl'a geçiririm.