Faraday: デフォルトのリクエストタイムアウト値?

作成日 2014年09月23日  ·  5コメント  ·  ソース: lostisland/faraday

リクエストごとにタイムアウトを設定するのではなく、セッション内で開かれたすべての接続にデフォルトを設定することは可能ですか?

最も参考になるコメント

他の場所でこれについての正しい言及はほとんど見られないので、0.9.2のこれのビルダーバージョンはこれであり、options属性はリクエストオプションのデフォルトです:

Faraday::Connection.new('https://api.example.com') do |builder|
  builder.options[:open_timeout] = 2
  builder.options[:timeout] = 5
  builder.adapter Faraday.default_adapter
end

全てのコメント5件

リクエストごとに編集できるオプションは、すべてのリクエストを行うために使用できるConnectionインスタンスに設定することもできます。

conn = Faraday.new("https://api.example.com", request: {
  open_timeout: 2,   # opening a connection
  timeout: 5         # waiting for response
})

conn.get(...)

完璧です、ありがとう!

他の場所でこれについての正しい言及はほとんど見られないので、0.9.2のこれのビルダーバージョンはこれであり、options属性はリクエストオプションのデフォルトです:

Faraday::Connection.new('https://api.example.com') do |builder|
  builder.options[:open_timeout] = 2
  builder.options[:timeout] = 5
  builder.adapter Faraday.default_adapter
end

どちらの例も、リクエストごとに設定する方法を説明しています。グローバルに設定するにはどうすればよいですか?

@neohunter上記の例では、その接続から実行されるリクエストごとに設定します。 Faradayは現在、すべての接続のグローバル設定をサポートしていませんが、管理する接続の数はごくわずか(実際には、ほとんどの場合1つのみ)であるため、実際には必要ありません。

このページは役に立ちましたか?
0 / 5 - 0 評価