Grab browser language and store min value on cookie for nodejs.
If browser['Accept-Language'] = it-IT,it;q=0.8,en-US;q=0.6,en;q=0.4, store it on cookie, otherwise, if language is not available, store default language en
Install through NPM
npm install browser-languageor
git clone git://github.com/hex7c0/browser-language.gitNormal use inside expressjs project
var language = require('browser-language');
var app = require('express')();
app.use(language());Signed use inside expressjs project
var language = require('browser-language');
var app = require('express')();
var cookie = require('cookie-parser');
app.use(cookie('foo'));
app.use(language({
dictionary: {
_default: 'en',
en: 'en'
},
cookie: 'new_cookie_name',
signed: true
}));Check Cookie options
dictionary- Object Accepted language_default- String The dafault value, if request from client cannot be evaluateden- String Set cookie with 'en' valueit- String Set cookie with 'it' value..- String Set cookie with '..' valuedomain- String Domain of cookie (default "null")cookie- String Name of cookie (default "lang")path- String Path of cookie (default "/")maxAge- Number Age of cookie in millisecond (default "1 year")httpOnly- Boolean Flag for http only cookie (default "false")secure- Boolean Flag for using cookie over TLS/SSL (default "false")signed- Boolean Will use the secret passed to cookieParser(secret) to sign the value (default "false")encryption- Object Configuration for cookie-encryption (defaut "deactivated")
dictionary object with correct value to be added, otherwise using a default dictionary inside ./lib/dictionary.js
Take a look at my examples