Я настоятельно рекомендую использовать Savon для работы с SOAP в Ruby!
Я предполагаю, что вы работаете с HTTP Basic-аутентификацией, в этом случае она должна быть довольно простой.Просто:
client = Savon::Client.new do
http.auth.basic "user_name", "password"
# Use a local wsdl
wsdl.document = File.expand_path("../wsdl/ebay.xml", __FILE__)
# or from internet
wsdl.document = "http://service.example.com?wsdl"
# to list SOAP actions
client.wsdl.soap_actions
end
(это просто из моей головы, так что это может быть немного не так). Прочитайте ссылку, которую я разместил, и напишите мне, если вы не можете понять это.:)
Файл сертификата используется для вашего компьютера, чтобы принять идентификацию сервера, к которому вы хотите подключиться.Если вы установили его на свой компьютер, я не думаю, что вам нужно что-то делать с этой частью.
РЕДАКТИРОВАТЬ
Если вы не можете использоватьФайл WSDL, вам придется создавать xml вручную, это довольно уродливо, но возможно, если нет другого пути.Nokogiri может быть использован для создания XML-документа, тогда вы можете просто отправить документ XML на правильный URL-адрес.У меня есть хороший опыт использования httpi-ntlm для аутентификации.