Various Faraday middlewares for Faraday-based API wrappers
Ruby Shell
Latest commit 5df8cec Jan 23, 2017 @iMacTia iMacTia committed on GitHub Update version.rb

Faraday Middleware

A collection of useful Faraday middleware. See the documentation.

gem install faraday_middleware


Some dependent libraries are needed only when using specific middleware:

  • FaradayMiddleware::EncodeJson & FaradayMiddleware::ParseJson: "json" for ruby older than 1.9
  • FaradayMiddleware::ParseXml: "multi_xml"
  • FaradayMiddleware::OAuth: "simple_oauth"
  • FaradayMiddleware::Mashify: "hashie"
  • FaradayMiddleware::Rashify: "rash"
  • FaradayMiddleware::Instrumentation: "activesupport"


require 'faraday_middleware'

## in Faraday 0.8 or above:
connection = '' do |conn|
  conn.request :oauth2, 'TOKEN'
  conn.request :json

  conn.response :xml,  :content_type => /\bxml$/
  conn.response :json, :content_type => /\bjson$/

  conn.use :instrumentation
  conn.adapter Faraday.default_adapter

## with Faraday 0.7:
connection = '' do |builder|
  builder.use FaradayMiddleware::OAuth2, 'TOKEN'
  builder.use FaradayMiddleware::EncodeJson

  builder.use FaradayMiddleware::ParseXml,  :content_type => /\bxml$/
  builder.use FaradayMiddleware::ParseJson, :content_type => /\bjson$/

  builder.use FaradayMiddleware::Instrumentation
  builder.adapter Faraday.default_adapter