2014-10-31 6 views
0

Ruby gem - Curb에 대한 질문이 있습니다. 나는이 보석으로 주위 재생이 코드 조각이있어 :커브 보석을 사용하여 특정 헤더 만 인쇄하십시오.

예를 들어
require 'curb' 
require 'colorize' 

def err(msg) 
    puts 
    puts msg.red 
    puts 'HOWTO: '.white + './script.rb <domain>'.red 
    puts 
end 

target = ARGV[0] || err("You forgot something....") 

Curl::Easy.perform(target) do |curl| 
    curl.headers["User-Agent"] = "Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.7.7) Gecko/20050421" 
    curl.verbose = true 
end 

, 내가 google.com에 그것을 시도 할 때, 나는이 헤더 (I 스크립트에서 전체 결과를 넣지 마십시오) 수 :

Host: google.com 
Accept: */* 
User-Agent: Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.7.7) Gecko/20050421 

* STATE: DO => DO_DONE handle 0x1c8dd80; (connection #0) 
* STATE: DO_DONE => WAITPERFORM handle 0x1c8dd80; (connection #0) 
* STATE: WAITPERFORM => PERFORM handle 0x1c8dd80; (connection #0) 
* additional stuff not fine transfer.c:1037: 0 0 
* HTTP 1.1 or later with persistent connection, pipelining supported 
< HTTP/1.1 302 Found 
< Cache-Control: private 
< Content-Type: text/html; charset=UTF-8 
< Location: https://www.google.cz/?gfe_rd=cr&ei=2stTVO2eJumg8we6woGoCg 
< Content-Length: 259 
< Date: Fri, 31 Oct 2014 17:50:18 GMT 
< Server: GFE/2.0 
< Alternate-Protocol: 443:quic,p=0.01 

내 질문에 커브를 통해 특정 헤더 만 인쇄하는 방법이 있습니까? 예를 들어 다음과 같이이 헤더 만 출력하면됩니다.

Content-Type: text/html; charset=UTF-8 
Location: https://www.google.cz/?gfe_rd=cr&ei=2stTVO2eJumg8we6woGoCg 
Server: GFE/2.0 

더 이상 아무것도 없습니다. 이 보석을 통해 어떻게 할 수 있습니까? 또는 다른 보석을 사용하여 아이디어를 얻는 방법이 있다면 알려주십시오.

답변

0

직접 해석하는 것이 가장 어려운 일은 아닙니다.

정확하게 "Get response headers from Curb"이 제안하는 것입니다.

+0

앵커 텍스트에 "이 StackOverflow 응답"과 같은 것을 사용하지 마십시오. 대신, 사람들이 클릭하는 내용에 대해 더 잘 알 수 있도록 합리적으로 설명적인 것을 사용하십시오. 자세한 내용은 "[링크 텍스트로 [여기 사용하지 마십시오]"(http://www.w3.org/QA/Tips/noClickHere) "를 참조하십시오. 그래서 그렇게하는 것이 정말 쉽습니다. 답을 편집하십시오. –