Sha256: 4be1efad51c7071a5a47c785cda57c9fce4e3dfaa02b1dbd9ac5af38a4624aad
Contents?: true
Size: 602 Bytes
Versions: 3
Compression:
Stored size: 602 Bytes
Contents
module Faraday class Env attr_accessor :rels end end require 'faraday' module FaradayMiddleware class RelsMiddleware < Faraday::Middleware def initialize(app, options = {}) @app = app @options = options end def call(environment) @app.call(environment).on_complete do |env| links = (env.response_headers["Link"] || "").split(', ').map do |link| href, name = link.match(/<(.*?)>; rel="(\w+)"/).captures [name.to_sym, href] end env.rels = Hash[*links.flatten] end end end end
Version data entries
3 entries across 3 versions & 1 rubygems