class ApolloUploadServer::Middleware
Public Class Methods
new(app)
click to toggle source
# File lib/apollo_upload_server/middleware.rb, line 13 def initialize(app) @app = app end
Public Instance Methods
call(env)
click to toggle source
# File lib/apollo_upload_server/middleware.rb, line 17 def call(env) unless env['CONTENT_TYPE'].to_s.include?('multipart/form-data') return @app.call(env) end request = ActionDispatch::Request.new(env) params = request.params if params['operations'].present? && params['map'].present? result = GraphQLDataBuilder.new(strict_mode: self.class.strict_mode).call(request.params) result&.each do |key, value| request.update_param(key, value) end end @app.call(env) end