Sha256: a1e31dc7bb90d9290af7be01c86f07013c4852495a3ca5d331f6a1dbf22b31ce

Contents?: true

Size: 1.09 KB

Versions: 24

Compression:

Stored size: 1.09 KB

Contents

var optional = require('./optional')
  , tough = optional('tough-cookie')
  , Cookie = tough && tough.Cookie
  , CookieJar = tough && tough.CookieJar
  ;

exports.parse = function(str) {
  if (str && str.uri) str = str.uri
  if (typeof str !== 'string') throw new Error("The cookie function only accepts STRING as param")
  if (!Cookie) {
    return null;
  }
  return Cookie.parse(str)
};

// Adapt the sometimes-Async api of tough.CookieJar to our requirements
function RequestJar() {
  this._jar = new CookieJar();
}
RequestJar.prototype.setCookie = function(cookieOrStr, uri, options) {
  return this._jar.setCookieSync(cookieOrStr, uri, options || {});
};
RequestJar.prototype.getCookieString = function(uri) {
  return this._jar.getCookieStringSync(uri);
};
RequestJar.prototype.getCookies = function(uri) {
  return this._jar.getCookiesSync(uri);
};

exports.jar = function() {
  if (!CookieJar) {
    // tough-cookie not loaded, return a stub object:
    return {
      setCookie: function(){},
      getCookieString: function(){},
      getCookies: function(){}
    };
  }
  return new RequestJar();
};

Version data entries

24 entries across 17 versions & 2 rubygems

Version Path
hooch-0.4.2 jasmine/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/node_modules/request/lib/cookies.js
hooch-0.4.1 jasmine/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/node_modules/request/lib/cookies.js
hooch-0.4.0 jasmine/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/node_modules/request/lib/cookies.js
hooch-0.3.0 jasmine/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/node_modules/request/lib/cookies.js
hooch-0.2.1 jasmine/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/node_modules/request/lib/cookies.js
hooch-0.2.0 jasmine/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/node_modules/request/lib/cookies.js
hooch-0.1.0 jasmine/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/node_modules/request/lib/cookies.js
hooch-0.0.8 jasmine/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/node_modules/request/lib/cookies.js
hooch-0.0.7 jasmine/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/node_modules/request/lib/cookies.js
hooch-0.0.6 jasmine/node_modules/karma-phantomjs-launcher/node_modules/phantomjs/node_modules/request/lib/cookies.js
entangled-0.0.16 spec/dummy/public/node_modules/bower/node_modules/request/lib/cookies.js
entangled-0.0.16 spec/dummy/public/node_modules/phantomjs/node_modules/request/lib/cookies.js
entangled-0.0.15 spec/dummy/public/node_modules/phantomjs/node_modules/request/lib/cookies.js
entangled-0.0.15 spec/dummy/public/node_modules/bower/node_modules/request/lib/cookies.js
entangled-0.0.14 spec/dummy/public/node_modules/bower/node_modules/request/lib/cookies.js
entangled-0.0.14 spec/dummy/public/node_modules/phantomjs/node_modules/request/lib/cookies.js
entangled-0.0.13 spec/dummy/public/node_modules/bower/node_modules/request/lib/cookies.js
entangled-0.0.13 spec/dummy/public/node_modules/phantomjs/node_modules/request/lib/cookies.js
entangled-0.0.12 spec/dummy/public/node_modules/phantomjs/node_modules/request/lib/cookies.js
entangled-0.0.12 spec/dummy/public/node_modules/bower/node_modules/request/lib/cookies.js