【问题标题】:keep-alive in ruby faraday在红宝石法拉第中保持活力
【发布时间】:2015-10-17 15:45:51
【问题描述】:

我有这样的方法:

def make_request(path, params, body)
  raise ArgumentError.new('Endpoint not set!') if url.nil?
  conditions          = {url: url}
  conditions[:params] = params unless params.blank?
  connection          = Faraday::Connection.new(conditions)
  connection.run_request(:get, path, body, {'Content-Type' => 'application/json'})
end

那我怎么能在那里添加keep-alive呢?另外,由于我每次调用此方法时都会实例化一个连接对象(url可能不同),keep-alive参数是否仍然有效?

【问题讨论】:

    标签: ruby keep-alive faraday


    【解决方案1】:

    我发现了一些东西 herehere,但我自己没有测试过。

    Faraday.new(uri) do |f|
      f.adapter :net_http_persistent
    end
    

    您可以保持连接创建一个新方法“连接”

    def connection
      @connection ||= Faraday.new(@url_without_path) do |f|
                        f.adapter :net_http_persistent
                      end
    end
    

    【讨论】:

    • 这在 Faraday 1.4.1 和 Ruby 3.0.1 中对我有用。我需要安装 gem "net-http-persistent"
    猜你喜欢
    • 1970-01-01
    • 2012-02-09
    • 1970-01-01
    • 2014-03-29
    • 1970-01-01
    • 2010-12-05
    • 1970-01-01
    • 1970-01-01
    • 2015-09-28
    相关资源
    最近更新 更多