Ruby Proxy Authentication GET/POST с OpenURI или net/http

Я использую ruby ​​​​1.9.3 и пытаюсь использовать open-uriдля получения URL-адреса и попробуйте опубликовать сообщение, используя Net:HTTP

Я пытаюсь использовать прокси-аутентификацию для обоих:

Пытаюсь выполнить запрос POSTс помощью net/http:

require 'net/http'
require 'open-uri'
http = Net::HTTP.new("google.com", 80)
headers = { 'User-Agent' => 'Ruby 193'}

resp, data = http.post("/", "name1=value1&name2=value2", headers)
puts data

И для open-uri, который я не могу сделать POSTя использую:

data = open("http://google.com/","User-Agent"=> "Ruby 193").read

Как мне изменить их, чтобы использовать прокси с HTTP-аутентификацией

Я пытался (для open-uri)

data = open("http://google.com/","User-Agent"=> "Ruby 193", :proxy_http_basic_authentication => ["http://proxy.com:8000/", "proxy-user", "proxy-password"]).read

Однако все, что я получил, это OpenURI::HTTPError: 407 Proxy Authentication Required. Я проверил все, и он работает в браузере с теми же данными аутентификации и прокси-сервера, но я не могу заставить ruby ​​сделать это.

Как изменить приведенный выше код, чтобы правильно добавить HTTP-аутентификацию? Кто-нибудь прошел через это злодеяние?

6
задан Akshat 6 April 2012 в 11:53
поделиться