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

Version Path
vulcan-0.8.2 server/node_modules/cradle/node_modules/follow/node_modules/request/vendor/cookie/index.js
vulcan-0.8.1 server/node_modules/cradle/node_modules/follow/node_modules/request/vendor/cookie/index.js
vulcan-0.8.0 server/node_modules/cradle/node_modules/follow/node_modules/request/vendor/cookie/index.js
vulcan-0.7.2 server/node_modules/cradle/node_modules/follow/node_modules/request/vendor/cookie/index.js
vulcan-0.7.1 server/node_modules/cradle/node_modules/follow/node_modules/request/vendor/cookie/index.js
vulcan-0.7.0 server/node_modules/cradle/node_modules/follow/node_modules/request/vendor/cookie/index.js