我使用RestClient来获取互联网上的页面。我做的这个脚本也是通过使用RestClient.proxy = "http://proxy.example.com/"
启用代理。但我不总是使用代理。因此,我希望脚本能够自动读取系统设置,而不是在脚本内部手动设置代理。
GitHub文档说明:
通常,代理URL是在环境变量中设置的,因此您可以执行此操作以使用系统配置使用的任何代理:
RestClient.proxy = ENV['http_proxy']
我不知道如何检测系统代理是否在此处。虽然它可以检测到我正在使用的代理地址。
RestClient.proxy = "http://proxy.example.com/"
启用IF代理。这没有什么神奇之处。
http_proxy
由用户或管理员设置,可以是http_proxy=http://username:[email protected]:8080
形式,凭据和端口都是可选的。
这些都没有从系统中神奇地导入; * nix系统通常没有“系统代理设置”,我认为您无法获得在网络设置中确定的Windows代理设置。
This回答告诉如何通过cmd添加代理。也许这可能是有用的。您可以使用system()
运行这些命令。您可能不需要在RestClient中专门指定代理。 !UNTESTED!这也有端口选项。 Windows代理和终端代理是不同的。
所以你的第二和第三个问题有希望得到解答。