Sha256: a5a05cf1b2c5236e4421af1610fb7863e3a6f7e2e29400b0610ecdec03d8b9bd
Contents?: true
Size: 1004 Bytes
Versions: 6
Compression:
Stored size: 1004 Bytes
Contents
/*! * Tobi - Cookie * Copyright(c) 2010 LearnBoost <dev@learnboost.com> * MIT Licensed */ /** * Module dependencies. */ var url = require('url'); /** * Initialize a new `Cookie` with the given cookie `str` and `req`. * * @param {String} str * @param {IncomingRequest} req * @api private */ var Cookie = exports = module.exports = function Cookie(str, req) { this.str = str; // First key is the name this.name = str.substr(0, str.indexOf('=')); // Map the key/val pairs str.split(/ *; */).reduce(function(obj, pair){ pair = pair.split(/ *= */); obj[pair[0].toLowerCase()] = pair[1] || true; return obj; }, this); // Assign value this.value = this[this.name]; // Expires this.expires = this.expires ? new Date(this.expires) : Infinity; // Default or trim path this.path = this.path || '/'; }; /** * Return the original cookie string. * * @return {String} * @api public */ Cookie.prototype.toString = function(){ return this.str; };
Version data entries
6 entries across 6 versions & 1 rubygems