创建时出现 ruby​​ ssl soap 错误

标签 ruby soap ssl

当我尝试创建一个 soap 对象时,我在第一次初始化该类时遇到错误。我无法设置 driver.options["protocol.http.ssl_config.verify_mode"] = OpenSSL::SSL::VERIFY_NONE 因为它已经出错了。有任何想法吗?

require 'soap/wsdlDriver' => []

wsdl = "https://somesiteinhttps.com" driver = SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver at depth 0 - 20: unable to get local issuer certificate

OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed

from /usr/lib/ruby/gems/1.8/gems/httpclient-2.1.4/lib/httpclient/session.rb:247:in `connect'
from /usr/lib/ruby/gems/1.8/gems/httpclient-2.1.4/lib/httpclient/session.rb:247:in `ssl_connect'
from /usr/lib/ruby/gems/1.8/gems/httpclient-2.1.4/lib/httpclient/session.rb:639:in `connect'
from /usr/lib/ruby/gems/1.8/gems/httpclient-2.1.4/lib/httpclient/timeout.rb:128:in `timeout'
from /usr/lib/ruby/gems/1.8/gems/httpclient-2.1.4/lib/httpclient/session.rb:631:in `connect'
from /usr/lib/ruby/gems/1.8/gems/httpclient-2.1.4/lib/httpclient/session.rb:522:in `query'
from /usr/lib/ruby/gems/1.8/gems/httpclient-2.1.4/lib/httpclient/session.rb:147:in `query'
from /usr/lib/ruby/gems/1.8/gems/httpclient-2.1.4/lib/httpclient.rb:942:in `do_get_block'
from /usr/lib/ruby/gems/1.8/gems/httpclient-2.1.4/lib/httpclient.rb:758:in `do_request'
from /usr/lib/ruby/gems/1.8/gems/httpclient-2.1.4/lib/httpclient.rb:837:in `protect_keep_alive_disconnected'
from /usr/lib/ruby/gems/1.8/gems/httpclient-2.1.4/lib/httpclient.rb:757:in `do_request'
from /usr/lib/ruby/gems/1.8/gems/httpclient-2.1.4/lib/httpclient.rb:822:in `follow_redirect'
from /usr/lib/ruby/gems/1.8/gems/httpclient-2.1.4/lib/httpclient.rb:514:in `get_content'
from /usr/lib/ruby/1.8/wsdl/xmlSchema/importer.rb:64:in `fetch'
from /usr/lib/ruby/1.8/wsdl/xmlSchema/importer.rb:30:in `import'
from /usr/lib/ruby/1.8/wsdl/importer.rb:18:in `import'
from /usr/lib/ruby/1.8/soap/wsdlDriver.rb:124:in `import'
from /usr/lib/ruby/1.8/soap/wsdlDriver.rb:28:in `initialize'
from (irb):15:in `new'
from (irb):15>> driver = SOAP::WSDLDriverFactory.new(wsdl)

最佳答案

有点想通了。将 ruby​​ 降级到 1.8.5 而不是使用 1.8.7 并且相同的代码有效。

关于创建时出现 ruby​​ ssl soap 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/836739/

相关文章:

.net - 使用 .NET 3.5 中的 SOAP 1.1 Web 服务

soap - 是否仍支持 PayPal NVP/SOAP express 结账?

ssl - 如何在开源社交网络中注册新组件

java SunPKCS11 多个 etokens(智能卡)同时,找不到提供者错误

c# - 具有使用 SSL 的上下文的 UserPrincipal

ruby - Sass 编码::兼容性错误

ruby - 在 Shopify Ruby 中使用 "contain"运算符来处理 cart.discount_code - 不起作用

ruby - 是否有一种快捷方式可以用 ruby​​ 中使用的方法的返回值来分配某个变量?

ruby - 如何在 ruby​​/curb 的 url 超时时退出异步调用

c# - 使用 BinarySecurityToken 通过 X.509 证书保护 WCF