Class Rack::AcceptMediaTypes
In: lib/sinatra/accept_media_types.rb
Parent: Array

AcceptMediaTypes is intended for wrapping env[‘HTTP_ACCEPT’].

It allows ordering of its values (accepted media types) according to their "quality" (preference level).

This wrapper is typically used to determine the request‘s prefered media type (see example below).

Examples
  env['HTTP_ACCEPT']  #=> 'application/xml;q=0.8,text/html,text/plain;q=0.9'

  types = Rack::AcceptMediaTypes.new(env['HTTP_ACCEPT'])
  types               #=> ['text/html', 'text/plain', 'application/xml']
  types.prefered      #=>  'text/html'
Notes

For simplicity, media type parameters are striped, as they are seldom used in practice. Users who need them are excepted to parse the Accept header manually.

References

HTTP 1.1 Specs:

Methods

new   prefered  

Public Class methods

Public Instance methods

The client‘s prefered media type.

[Validate]