2009-11-14 4 views
0

Я пытаюсь запустить следующий код, чтобы вызвать веб-сервис из ruby, но получить сообщение об ошибке «SSL не поддерживается».«SSL не поддерживается» при вызове веб-службы https в Ruby

У меня установлен httpclient 2.1.5.2.

require 'soap/wsdlDriver' 

def validate_certificate(is_ok, ctx) 
    cert = ctx.current_cert 
    unless (cert.subject.to_s == cert.issuer.to_s) #check the server certificate only 
    is_ok &&= File.open(file_name).read == ctx.current_cert.to_pem 
    end 
    is_ok 
end 

def test_webservice 
    wsdl = "https://.../service.wsdl" 
    driver = SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver 
    driver.options['protocol.http.ssl_config.verify_callback'] = method(:validate_certificate) 

    driver.method(params) 
end 
+0

Возможно, ваша установка Ruby не имеет встроенной поддержки SSL? Посмотрите на установочные документы для своей платформы. –

+0

требуют 'openssl' => true. – user204884

ответ