Method: WhatsAppCloudApi::FaradayClient#create_connection
- Defined in:
- lib/whats_app_cloud_api/http/faraday_client.rb
#create_connection(timeout:, max_retries:, retry_interval:, backoff_factor:, retry_statuses:, retry_methods:, adapter:, cache: false, verify: true) ⇒ Object
Method to initialize connection.
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/whats_app_cloud_api/http/faraday_client.rb', line 33 def create_connection(timeout:, max_retries:, retry_interval:, backoff_factor:, retry_statuses:, retry_methods:, adapter:, cache: false, verify: true) Faraday.new do |faraday| faraday.use Faraday::HttpCache, serializer: Marshal if cache faraday.use Faraday::FollowRedirects::Middleware faraday.request :gzip faraday.request :multipart faraday.request :url_encoded faraday.ssl[:ca_file] = Certifi.where faraday.ssl[:verify] = verify faraday.request :retry, max: max_retries, interval: retry_interval, backoff_factor: backoff_factor, retry_statuses: retry_statuses, methods: retry_methods, retry_if: proc { |env, _exc| env.request.context['forced_retry'] ||= false } faraday.adapter adapter faraday.[:params_encoder] = Faraday::FlatParamsEncoder faraday.[:timeout] = timeout if timeout.positive? end end |