2014-10-14 8 views
0

Я использую Savon для подключения к конечной точке веб-службы через HTTP без проблем. Я могу сделать это через SoapUI и через Savon. Теперь я должен ударить о конечной точке HTTPS. Я смог сделать это с помощью SoapUI (без предоставления дополнительных учетных данных для проверки подлинности), но когда я пытаюсь подключиться через Savon, я получаю «SocketError: Connection reset by peer». Мой код прост:Рельсы с Savon over HTTPS: Сброс соединения с помощью peer

клиент = Savon.client (WSDL: "/ WS/услуги/mainservice WSDL")

client.operations

Как вы можете видеть, что я просто пытаюсь отобразить доступные операции. Я что-то упустил? Is SoapUI делает что-то «под обложками», которое мне нужно сделать для объекта клиента Savon?

Примечание. Следует отметить, что, когда я указываю SoapUI на wsdl, все верно, сохраняя конечную точку по отдельному запросу. Это «Http», а не «https». Изменение этого, несмотря на то, что все работает так, как ожидалось, все еще неявно предоставляет учетные данные.

ответ

0

Я думаю, клиент пытается проверить сертификат SSL. Следовательно, вы не дали того, что он терпит неудачу. Вы можете попробовать:

client = Savon.client(wsdl: "/ws/services/mainservice?wsdl", 
         ssl_verify_mode: :none) 

client.operations 
+0

Да, я пробовал. Вероятно, должен был опубликовать, что я сделал. Спасибо хоть. –