Module: Philiprehberger::HeaderKit::Accept
- Defined in:
- lib/philiprehberger/header_kit/accept.rb
Overview
Parses Accept headers into structured media type entries with quality values.
Each entry contains the media type, a quality factor (0.0-1.0), and any additional parameters from the header.
Constant Summary collapse
- QUALITY_PATTERN =
/\Aq\z/i
Class Method Summary collapse
-
.parse(header) ⇒ Array<Hash>
Parse an Accept header string.
Class Method Details
.parse(header) ⇒ Array<Hash>
Parse an Accept header string.
16 17 18 19 20 21 |
# File 'lib/philiprehberger/header_kit/accept.rb', line 16 def self.parse(header) return [] if header.nil? || header.strip.empty? entries = header.split(',').map { |entry| parse_entry(entry.strip) } entries.compact.sort_by { |e| [-e[:quality], entries.index(e)] } end |