This package has been deprecated

Author message:

Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

http-accept

0.1.6 • Public • Published

Accept

Accept parses all accept header fields and sorts them according to the HTTP specification.

Supported Header Fields

Accept

Parsed into req.accept.types.

Accept-Charset

Parsed into req.accept.charsets.

Accept-Encoding

Parsed into req.accept.encodings.

Accept-Language

Parsed into req.accept.languages.

Accept-Ranges

Parsed into req.accept.ranges.

Installation

npm install http-accept

Usage

Just require 'http-accept' and throw it into a connect compatible middlware stack.

connect  = require 'connect'
http     = require 'http'
accept   = require 'http-accept'
 
app = connect()
app.use connect.logger 'dev'
app.use accept
app.use (req, res) ->
    console.log req.accept
    res.end()
 
app.listen 3000

A request from a browser on http://localhost:3000 would print out

{ types: 
   [ { type: 'text',
       subtype: 'html',
       params: {},
       mediarange: 'text/html',
       quality: 1 },
     { type: 'application',
       subtype: 'xhtml+xml',
       params: {},
       mediarange: 'application/xhtml+xml',
       quality: 1 },
     { type: 'application',
       subtype: 'xml',
       params: [Object],
       mediarange: 'application/xml',
       quality: 0.9 },
     { type: '*',
       subtype: '*',
       params: [Object],
       mediarange: '*/*',
       quality: 0.8 } ],
  charsets: undefined,
  encodings: [ 'gzip', 'deflate' ],
  languages: [ 'de-de', 'de', 'en-us', 'en' ],
  ranges: undefined }

For each header present in the request, there is also a getBestMatch method which will find the highest quality match amongst the supplied candidates.

encoding = (req.accept.encodings?.getBestMatch ["gzip""deflate"]) ? "identity"
mediaType = req.accept.types?.getBestMatch ["text/html""application/json" ,"application/xml"]

Dependencies (0)

    Dev Dependencies (0)

      Package Sidebar

      Install

      npm i http-accept

      Weekly Downloads

      54

      Version

      0.1.6

      License

      none

      Last publish

      Collaborators

      • niclashoyer
      • dougwilson