Skip to content

Repository files navigation

vary

NPM VersionNPM DownloadsNode.js VersionBuild StatusCoverage Status

Manipulate the HTTP Vary header

Installation

This is a Node.js module available through the npm registry. Installation is done using the npm install command:

$ npm install vary

API

varvary=require('vary')

vary(res, field)

Adds the given header field to the Vary response header of res. This can be a string of a single field, a string of a valid Vary header, or an array of multiple fields.

This will append the header if not already listed, otherwise leaves it listed in the current location.

// Append "Origin" to the Vary header of the responsevary(res,'Origin')

vary.append(header, field)

Adds the given header field to the Vary response header string header. This can be a string of a single field, a string of a valid Vary header, or an array of multiple fields.

This will append the header if not already listed, otherwise leaves it listed in the current location. The new header string is returned.

// Get header string appending "Origin" to "Accept, User-Agent"vary.append('Accept, User-Agent','Origin')

Examples

Updating the Vary header when content is based on it

varhttp=require('http')varvary=require('vary')http.createServer(functiononRequest(req,res){// about to user-agent sniffvary(res,'User-Agent')varua=req.headers['user-agent']||''varisMobile=/mobi|android|touch|mini/i.test(ua)// serve site, depending on isMobileres.setHeader('Content-Type','text/html')res.end('You are (probably) '+(isMobile ? '' : 'not ')+'a mobile user')})

Testing

$ npm test

License

MIT

About

Manipulate the HTTP Vary header

Topics

Resources

Code of conduct

Security policy

Stars

65 stars

Watchers

12 watching

Forks

Releases

Packages

Used by

Contributors

Languages