more robust cookies

This commit is contained in:
Rich Harris
2018-10-01 22:47:11 -04:00
parent 9773781262
commit 709c9992e3
4 changed files with 24 additions and 27 deletions

View File

@@ -1,20 +1,15 @@
export function get(req, res) {
const cookies = req.headers.cookie
? req.headers.cookie.split(/,\s+/).reduce((cookies, cookie) => {
const [pair] = cookie.split('; ');
const [name, value] = pair.split('=');
cookies[name] = value;
return cookies;
}, {})
: {};
import cookie from 'cookie';
export function get(req, res) {
if (req.headers.cookie) {
const cookies = cookie.parse(req.headers.cookie);
if (cookies.test) {
res.writeHead(200, {
'Content-Type': 'application/json'
});
res.end(JSON.stringify({
message: cookies.test
message: `a: ${cookies.a}, b: ${cookies.b}, max-age: ${cookies['max-age']}`
}));
} else {
res.writeHead(403, {

View File

@@ -44,7 +44,7 @@ const middlewares = [
// set test cookie
(req, res, next) => {
res.setHeader('Set-Cookie', 'test=woohoo!; Max-Age=3600');
res.setHeader('Set-Cookie', ['a=1; Path=/', 'b=2; Path=/']);
next();
},

View File

@@ -623,7 +623,7 @@ function run({ mode, basepath = '' }) {
return nightmare.goto(`${base}/credentials?creds=include`)
.page.title()
.then(title => {
assert.equal(title, 'woohoo!');
assert.equal(title, 'a: 1, b: 2, max-age: undefined');
});
});
@@ -641,7 +641,7 @@ function run({ mode, basepath = '' }) {
.wait(100)
.page.title()
.then(title => {
assert.equal(title, 'woohoo!');
assert.equal(title, 'a: 1, b: 2, max-age: undefined');
});
});