указать аутентификацию прокси с savonrb - PullRequest
1 голос
/ 03 апреля 2012

Я использую savon для связи с мыльным веб-сервисом.Все это работает хорошо, и теперь мне нужно получить код ruby ​​в производство, где мы должны пройти через прокси-сервер.Этот прокси-сервер требует аутентификации.

Итак, мой вопрос, как я могу указать детали аутентификации прокси-сервера с помощью savon?

Дополнительная информация:

У меня естьвыяснил, что вы можете указать прокси-сервер следующим образом:

client = Savon::Client.new do
  ...
  http.proxy = "http://proxy.example.com"
end 

Просматривая код для savon, я обнаружил, что переменная http в блоке клиента ссылается на следующее:

def http
  @http ||= HTTPI::Request.new
end

К сожалению, просматривая код для HTTPI :: Request, я не смог найти способ указать аутентификацию для самого прокси.Вот код запроса httpi: https://github.com/rubiii/httpi/blob/master/lib/httpi/request.rb

Просто чтобы прояснить: я не пытаюсь выполнить HTTP-аутентификацию, я пытаюсь выполнить прокси-аутентификацию.

При указании прокси-сервера я получаю следующую ошибку, поскольку не могу найти способ указать учетные данные для проверки подлинности прокси:

407 «Требуется проверка подлинности прокси»

Заранее благодарю за любую помощь.

Ответы [ 2 ]

3 голосов
/ 25 июня 2012

Попробуйте это: http.proxy = "http://username:password@host:port"

1 голос
/ 10 марта 2015
Managed to resolve it with the following code:

@proxy_path = '<insert your proxy url here>'
@wsdl_path = '<insert your wsdl url here>'

@client = Savon.client do |variable|
    variable.proxy @proxy_path
    variable.wsdl @wsdl_path
end
@client.operations #to list operations
...