diff --git a/cookiejar.js b/cookiejar.js index 2afe2e7..3937e37 100644 --- a/cookiejar.js +++ b/cookiejar.js @@ -62,7 +62,6 @@ return this.name + "=" + this.value; }; - var cookie_str_splitter = /[:](?=\s*[a-zA-Z0-9_\-]+\s*[=])/g; Cookie.prototype.parse = function parse(str, request_domain, request_path) { if (this instanceof Cookie) { var parts = str.split(";").filter(function (value) { @@ -227,7 +226,7 @@ } } matches.toString = function toString() { - return matches.join(":"); + return matches.join(","); }; matches.toValueString = function toValueString() { return matches.map(function (c) { @@ -247,7 +246,7 @@ CookieJar.prototype.setCookies = function setCookies(cookies, request_domain, request_path) { cookies = Array.isArray(cookies) ? cookies : - cookies.split(cookie_str_splitter); + cookies.split(/[,](?=\s*[a-zA-Z0-9_\-]+\s*[=])/g); var successful = [], i, cookie; diff --git a/tests/test.js b/tests/test.js index d4ea27f..7245789 100644 --- a/tests/test.js +++ b/tests/test.js @@ -26,8 +26,8 @@ assert.equal(cookie.domain, ".test.com"); var test_jar = CookieJar(); test_jar.setCookies( "a=1;domain=.test.com;path=/" - +":b=2;domain=test.com;path=/" - +":c=3;domain=test.com;path=/;expires=January 1, 1970"); + +",b=2;domain=test.com;path=/" + +",c=3;domain=test.com;path=/;expires=January 1, 1970"); var cookies=test_jar.getCookies(CookieAccessInfo("test.com","/")) assert.equal(cookies.length, 2, "Expires on setCookies fail\n" + cookies.toString()); assert.equal(cookies.toValueString(), 'a=1;b=2', "Cannot get value string of multiple cookies");