让ruby自动找到http的代理/身份验证设置的值?

时间:2013-03-14 18:07:13

标签: ruby windows http proxy mechanize-ruby

我正在使用ruby gem Mechanize通过代理访问网站,它正在工作中发现我只是想知道是否可以让ruby自动填写我的代理设置。

require 'mechanize'

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

我知道如何获取用户名和代理但不知道密码,因为代理需要身份验证。

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

2 个答案:

答案 0 :(得分:0)

您的环境中应该包含变量HTTP_PROXY,其中包含您需要的所有内容,例如:

HTTP_PROXY = http://username:password@proxyserver.domain.com

然后,你应该有一个方法可以传递这个字符串,或者如果你不这样做,一些解析就可以了。

答案 1 :(得分:0)

原来我需要的是:

require 'mechanize'

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

我想我只是假设我需要密码,但看起来你只需要你的用户名。也许机械化使用NTLM或其他一些?