我正在使用Savon库连接到我的Rails应用程序上的一些政府Web服务。但是,Web服务托管在看似配置不当的计算机上,而openssl库拒绝使用它们。
由于Java和.NET客户端工作正常,我开始寻找替代方案。我已将Ruby运行时从Ruby Enterprise Edition更改为JRuby,后者不使用openssl库(它将SSL实现转发给Java本身),并且它运行良好。
所以现在我正在寻找使用HTTPS而不是openssl编写Ruby Web服务客户端的替代方案。是否有TLS / SSL的纯Ruby实现?或者我可以绑定的任何其他库?我听说过NSS,但看起来已被弃用了。
答案 0 :(得分:1)
机器是否安装了libcurl?以下库使用libcurl(内部使用openssl),我认为libcurl可能配置得很好。你需要libcurl头文件来编译和安装这些宝石......
我从来没有听说过Ruby的非openssl SSL / TLS实现。
答案 1 :(得分:0)
如果这是验证SSL证书的问题,您可以使用以下命令禁用检查:
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
答案 2 :(得分:0)
我通过切换到JRuby解决了这个问题。它有自己的openssl实现,作为纯Java SSL库的代理。