我正在努力让Savon gem连接到我们的一台服务器。我一直收到一个错误,说我无法通过ssl。我已经阅读了许多教程和修复程序,但似乎都不起作用。
任何感谢的帮助-如果我能克服它,这将成为我的星期一:-)。
错误:
D, [2011-06-20T09:43:02.002993 #10328] DEBUG -- : Retrieving WSDL from: http://path_to_wsdl:4443/sm/services/mailing/2009/03/02?wsdl
D, [2011-06-20T09:43:02.129057 #10328] DEBUG -- : HTTPI executes HTTP GET using the httpclient adapter
/.rvm/gems/ruby-1.9.2-p0/gems/httpclient-2.2.1/lib/httpclient/session.rb:276:in `connect': SSL_connect returned=1 errno=0 state=SSLv2/v3 read server hello A: sslv3 alert unexpected message (OpenSSL::SSL::SSLError)我的代码:
require 'savon'
client = Savon::Client.new "path_to_my_wsdl"
client.http.auth.ssl.cert_file = "path/cert.pem"
client.http.auth.ssl.cert_key_file = "/path/localhost.key"
client.http.auth.ssl.verify_mode = :none
client.wsse.credentials "username", "password"
client.wsdl.soap_actions发布于 2015-02-06 17:09:26
Savon 2.x支持ssl全局选项:
Savon.client(ssl_verify_mode: :none)和
Savon.client(ssl_version: :SSLv3) 发布于 2011-09-20 04:37:51
不知道您是否已经这样做了,但是当我不得不为一个项目使用Savon时,我发现使用SoapUI (http://www.eviware.com/)来确保Soap服务器按照我所认为的方式工作是非常有用的。然后,您可以从两者输出SOAP请求,并进行比较。
发布于 2012-12-15 19:37:56
在Ruby/http中有一个bug来处理SSL握手。
尝试强制SSL版本绕过该错误:
client.http.auth.ssl.sock.ssl_version="SSLv3"https://stackoverflow.com/questions/6412216
复制相似问题