2013-03-14 1 views
0

나는 루비 보석을 사용하고 있습니다. 프록시를 통해 웹 사이트에 액세스하려면 Mechanize를 사용하고 있습니다. 루비가 내 프록시 설정을 자동으로 채울 수 있는지 궁금합니다.루비가 http의 프록시/인증 설정 값을 자동으로 찾도록 하시겠습니까?

require 'mechanize' 

agent = Mechanize.new do|a| 
    a.set_proxy('proxy', port, 'YOUR_USER_NAME', 'YOUR_PASS') 
end 

프록시가 인증을 요구하므로 사용자 이름과 프록시를 얻는 방법은 알고 있지만 암호는 알지 못합니다.

ENV['username'] 
ENV['http_proxy'] 

답변

0

당신은 예를 들어, 필요한 모든 포함하는 환경에서 변수 HTTP_PROXY이 있어야합니다 다음

HTTP_PROXY = http://username:[email protected] 

를, '당신은 당신이 문자열을 전달할 수있는 방법이 있어야합니다, 또는 경우에 당신은 돈 t, 일부 구문 분석은 트릭을 수행합니다. 난 그냥 내가 암호를 필요로한다고 가정 추측

require 'mechanize' 

agent = Mechanize.new do|a| 
a.set_proxy('proxy', port, 'YOUR_USER_NAME') 
end 

하지만 당신은 사용자 이름이 필요 같습니다

+0

지금 당장 나는 'HTTP_PROXY'에 내 프록시/포트가 있고 그것을 수정하는 것보다 다른 방법이 있기를 바라고 있습니다. 내 PC에서 작동하지만 다른 스크립트에서 'HTTP_PROXY'가 없을 수도 있습니다. –

+0

내 솔루션은 뭔가 다른 경우에도 내 질문에 실제로 대답하기 때문에 당신은 금메달을 얻을. –

0

내가 필요한 모든이었다 밝혀졌습니다.! 아마도 mechanize는 NTLM 또는 일부를 사용합니까?

+0

참고 YOUR_USER_NAME에 실제로 ENV [ 'username']을 사용합니다. –