class VerifyNexmoSignature::Middleware
Public Class Methods
new(app)
click to toggle source
# File lib/verify_nexmo_signature/middleware.rb, line 4 def initialize(app) @app = app end
Public Instance Methods
call(env)
click to toggle source
# File lib/verify_nexmo_signature/middleware.rb, line 8 def call(env) req = ::Rack::Request.new(env) if req.post? params = req.params.dup verify = nexmo_client if verify.check(params) @app.call(env) else [403, {}, ['']] end else @app.call(env) end end
Private Instance Methods
nexmo_client()
click to toggle source
# File lib/verify_nexmo_signature/middleware.rb, line 25 def nexmo_client if ENV['NEXMO_API_SIGNATURE'] verify = Nexmo::Signature.new( ENV['NEXMO_API_SIGNATURE'] ) elsif defined?(Rails) && Rails.application.credentials.nexmo verify = Nexmo::Signature.new( Rails.application.credentials.nexmo[:api_signature] ) end verify end