【发布时间】:2015-04-22 13:56:58
【问题描述】:
我在代理后面,我必须获取 HTTPS 网页来收集一些信息,但 OpenURI 返回错误:“非 HTTP 代理 URI”。
这是问题:
> yadayada@ubuntu:~/Desktop/test/lib$ ruby JenkinsTest.rb
/home/yadayada/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/open-uri.rb:257:in `open_http': Non-HTTP proxy URI: https://web-proxy.yadayada:8088 (RuntimeError)
from /home/yadayada/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/open-uri.rb:736:in `buffer_open'
from /home/yadayada/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/open-uri.rb:211:in `block in open_loop'
from /home/yadayada/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/open-uri.rb:209:in `catch'
from /home/yadayada/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/open-uri.rb:209:in `open_loop'
from /home/yadayada/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/open-uri.rb:150:in `open_uri'
from /home/yadayada/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/open-uri.rb:716:in `open'
from /home/yadayada/.rvm/rubies/ruby-2.2.0/lib/ruby/2.2.0/open-uri.rb:34:in `open'
from JenkinsTest.rb:6:in `<main>'
yadayada@ubuntu:~/Desktop/test/lib$
这是我正在运行的代码:
1 require 'rubygems'
2 require 'nokogiri'
3 require 'open-uri'
4
5 # Request the Jenkins webpage
6 @jenkinsWebPage = Nokogiri::HTML(open("https://yadayad.yada.yada.com:8443"))
7
8 # Prints the received page
9 puts @jenkinsWebPage
代理没有登录名/密码。
有什么想法吗?
【问题讨论】:
-
我之前查过,但是我使用的代理没有认证;由于Jenkins服务器上的自签名证书无效,该jenkinsWebPage之后会出现问题,但我认为这不是open-uri目前抱怨的问题,我正在积极搜索几个星期来解决这个问题:(
标签: ruby https proxy nokogiri open-uri