【问题标题】:Ruby/Rails client to HTTPS APIRuby/Rails 客户端到 HTTPS API
【发布时间】:2011-08-11 10:54:55
【问题描述】:

我需要处理一些需要 https 连接的第三方 API。 我什至有一个证书文件 mycert.pem 并尝试以这种方式连接 API:

https = Net::HTTP.new(uri.host, uri.port)
https.use_ssl = true
https.verify_mode = OpenSSL::SSL::VERIFY_PEER
https.ca_file = File.join(Rails.root, "data", "certs", "mycert.pem")
https.ca_path = [Rails.root, "data", "certs"].join("/")

https.start {
  data = {
      <here some request data>
  }.to_json

  https.request_post([API_HOST, API_URL].join('/'), data) {|res|
    print res.body
  }
}

但是我总是有来自这个 API 的授权错误,就像我有无效(或过时的)证书一样。即使我确定这不是真的,而且我的客户端问题,导致其他客户端连接此 API(和相同的证书)没有问题。

所以,问题是

https 连接来自 ruby​​ 的服务的正确方法是什么?也许我丢失了什么或做错了什么?

【问题讨论】:

    标签: ruby-on-rails ruby ssl https


    【解决方案1】:

    我没有该特定问题的答案,但您可以尝试很多库来解决这个问题,这可能会对您有所帮助。

    看看这个很棒的幻灯片比较:

    http://www.slideshare.net/HiroshiNakamura/rubyhttp-clients-comparison

    我在我的项目中使用法拉第。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-31
      相关资源
      最近更新 更多