lib/grape/middleware/versioner/parse_media_type_patch.rb
module Rack module Accept module Header class << self # Corrected version of https://github.com/mjackson/rack-accept/blob/master/lib/rack/accept/header.rb#L40-L44 def parse_media_type(media_type) # see http://tools.ietf.org/html/rfc6838#section-4.2 for allowed characters in media type names m = media_type.to_s.match(%r{^([a-z*]+)\/([a-z0-9*\&\^\-_#\$!.+]+)(?:;([a-z0-9=;]+))?$}) m ? [m[1], m[2], m[3] || ''] : [] end end end class MediaType def parse_media_type(media_type) Header.parse_media_type(media_type) end end end end
Source Files
- lib/grape.rb
- lib/grape/api.rb
- lib/grape/api/helpers.rb
- lib/grape/api/instance.rb
- lib/grape/config.rb
- lib/grape/cookies.rb
- lib/grape/dsl/api.rb
- lib/grape/dsl/callbacks.rb
- lib/grape/dsl/configuration.rb
- lib/grape/dsl/desc.rb
- lib/grape/dsl/headers.rb
- lib/grape/dsl/helpers.rb
- lib/grape/dsl/inside_route.rb
- lib/grape/dsl/logger.rb
- lib/grape/dsl/middleware.rb
- lib/grape/dsl/parameters.rb
- lib/grape/dsl/request_response.rb
- lib/grape/dsl/routing.rb
- lib/grape/dsl/settings.rb
- lib/grape/dsl/validations.rb
- lib/grape/endpoint.rb
- lib/grape/error_formatter.rb
- lib/grape/error_formatter/base.rb
- lib/grape/error_formatter/json.rb
- lib/grape/error_formatter/txt.rb
- lib/grape/error_formatter/xml.rb
- lib/grape/exceptions/base.rb
- lib/grape/exceptions/incompatible_option_values.rb
- lib/grape/exceptions/invalid_accept_header.rb
- lib/grape/exceptions/invalid_formatter.rb
- lib/grape/exceptions/invalid_message_body.rb
- lib/grape/exceptions/invalid_response.rb
- lib/grape/exceptions/invalid_version_header.rb
- lib/grape/exceptions/invalid_versioner_option.rb
- lib/grape/exceptions/invalid_with_option_for_represent.rb
- lib/grape/exceptions/method_not_allowed.rb
- lib/grape/exceptions/missing_group_type.rb
- lib/grape/exceptions/missing_mime_type.rb
- lib/grape/exceptions/missing_option.rb
- lib/grape/exceptions/missing_vendor_option.rb
- lib/grape/exceptions/unknown_options.rb
- lib/grape/exceptions/unknown_parameter.rb
- lib/grape/exceptions/unknown_validator.rb
- lib/grape/exceptions/unsupported_group_type.rb
- lib/grape/exceptions/validation.rb
- lib/grape/exceptions/validation_array_errors.rb
- lib/grape/exceptions/validation_errors.rb
- lib/grape/extensions/active_support/hash_with_indifferent_access.rb
- lib/grape/extensions/deep_hash_with_indifferent_access.rb
- lib/grape/extensions/deep_mergeable_hash.rb
- lib/grape/extensions/deep_symbolize_hash.rb
- lib/grape/extensions/hash.rb
- lib/grape/extensions/hashie/mash.rb
- lib/grape/formatter.rb
- lib/grape/formatter/json.rb
- lib/grape/formatter/serializable_hash.rb
- lib/grape/formatter/txt.rb
- lib/grape/formatter/xml.rb
- lib/grape/http/headers.rb
- lib/grape/middleware/auth/base.rb
- lib/grape/middleware/auth/dsl.rb
- lib/grape/middleware/auth/strategies.rb
- lib/grape/middleware/auth/strategy_info.rb
- lib/grape/middleware/base.rb
- lib/grape/middleware/error.rb
- lib/grape/middleware/filter.rb
- lib/grape/middleware/formatter.rb
- lib/grape/middleware/globals.rb
- lib/grape/middleware/stack.rb
- lib/grape/middleware/versioner.rb
- lib/grape/middleware/versioner/accept_version_header.rb
- lib/grape/middleware/versioner/header.rb
- lib/grape/middleware/versioner/param.rb
- lib/grape/middleware/versioner/parse_media_type_patch.rb
- lib/grape/middleware/versioner/path.rb
- lib/grape/namespace.rb
- lib/grape/parser.rb
- lib/grape/parser/json.rb
- lib/grape/parser/xml.rb
- lib/grape/path.rb
- lib/grape/presenters/presenter.rb
- lib/grape/request.rb
- lib/grape/router.rb
- lib/grape/router/attribute_translator.rb
- lib/grape/router/pattern.rb
- lib/grape/router/route.rb
- lib/grape/serve_file/file_body.rb
- lib/grape/serve_file/file_response.rb
- lib/grape/serve_file/sendfile_response.rb
- lib/grape/util/content_types.rb
- lib/grape/util/env.rb
- lib/grape/util/inheritable_setting.rb
- lib/grape/util/inheritable_values.rb
- lib/grape/util/json.rb
- lib/grape/util/registrable.rb
- lib/grape/util/reverse_stackable_values.rb
- lib/grape/util/stackable_values.rb
- lib/grape/util/strict_hash_configuration.rb
- lib/grape/util/xml.rb
- lib/grape/validations.rb
- lib/grape/validations/attributes_iterator.rb
- lib/grape/validations/params_scope.rb
- lib/grape/validations/types.rb
- lib/grape/validations/types/build_coercer.rb
- lib/grape/validations/types/custom_type_coercer.rb
- lib/grape/validations/types/custom_type_collection_coercer.rb
- lib/grape/validations/types/file.rb
- lib/grape/validations/types/json.rb
- lib/grape/validations/types/multiple_type_coercer.rb
- lib/grape/validations/types/variant_collection_coercer.rb
- lib/grape/validations/types/virtus_collection_patch.rb
- lib/grape/validations/validator_factory.rb
- lib/grape/validations/validators/all_or_none.rb
- lib/grape/validations/validators/allow_blank.rb
- lib/grape/validations/validators/as.rb
- lib/grape/validations/validators/at_least_one_of.rb
- lib/grape/validations/validators/base.rb
- lib/grape/validations/validators/coerce.rb
- lib/grape/validations/validators/default.rb
- lib/grape/validations/validators/exactly_one_of.rb
- lib/grape/validations/validators/except_values.rb
- lib/grape/validations/validators/multiple_params_base.rb
- lib/grape/validations/validators/mutual_exclusion.rb
- lib/grape/validations/validators/presence.rb
- lib/grape/validations/validators/regexp.rb
- lib/grape/validations/validators/same_as.rb
- lib/grape/validations/validators/values.rb
- lib/grape/version.rb