it('should serve plus-one-cookie (defined in hook-startup.chiml)', function (done) { let cookieJar = request.jar() let cookie = request.cookie('data=3') let url = 'http://localhost:3010/plus-one-cookie' cookieJar.setCookie(cookie, url) request({url: url, jar: cookieJar}, function (error, response, body) { if (error) { return done(error) } assert.equal(body, '4') return done() }) })
var getJar = function(req) { "use strict"; let jar = request.jar(); if (req && req.cookies && req.cookies.isuAppCookie && (req.cookies.isuAppCookie != '') ) { req.cookies.isuAppCookie.split(';').map(function (val) { jar.setCookie( request.cookie(val), 'http://netreg.isu.edu.tw' ); }); } return jar; }
API.registerHandler({ emitter: 'vapor', event: 'cookies' }, (cookies) => { cookies.forEach((cookie) => { jar.setCookie(request.cookie(cookie), STEAMCOMMUNITY); }); clearInterval(interval); getNotifications(); interval = setInterval(getNotifications, TIMEOUT); });
function setCookie(jar, domain) { return res => { const cookie = res.headers['set-cookie'] if (!cookie) { global.log({ statusCode: res.statusCode, headers: res.headers }) return } let value = request.cookie(cookie[0].replace('.stack', 'stack')) jar.setCookie(value, domain, (err) => err && console.error(err)) jar.setCookie(value, domain.replace(/http(s)?:\/\//i, 'http$1://chat.'), (err) => err && console.error(err)) } }
setCookies(cookies) { let cookie; for (let i = 0; i < cookies.length; i++) { cookie = this._request.cookie(cookies[i]); this.cookieJar.setCookie(cookie, this.domain.url); } }
function applyCookies(cookies) { removeCookies(); cookies.forEach(cookie => { var newCookie = request.cookie(`${cookie.key}=${cookie.value}`); newCookie.key = cookie.key; newCookie.value = cookie.value; newCookie.path = cookie.path; newCookie.domain = cookie.domain; newCookie.creation = cookie.creation; newCookie.lastAccessed = cookie.lastAccessed; newCookie.hostOnly = cookie.hostOnly; jar.setCookie(newCookie, COOKIES_URL); }); }
options.webCookie.forEach(function (name) { cookieJar.setCookie(request.cookie(name), steamDomain); });
this.request(self.buildLoginURL(), function (err, response, body) { if (err) { callback(err, null); return; } if (response.statusCode !== 302) { callback('Response is not a 302 redirect but '+response.statusCode); return; } // manually store cookie during a 302 response // because the lib seem to don't do it in this case response.headers['set-cookie'].forEach(function(aCookie) { var cookie = request.cookie(aCookie); cookieJar.setCookie(cookie, self.buildLoginURL()); }); // follow the redirection (with our brand new cookies) var urlRedirection = response.headers.location; self.request({ url: urlRedirection, jar: cookieJar }, function (err, response, body) { if (err) { callback(err); return; } callback(err, response, body); }); });
SteamAuth.request({ url: SteamAuth.API_GETWGTOKEN, method: "POST", data: { access_token: self.session.oauth.oauth_token }, cookies: self.session.cookies, json:true }, function(err, response, body) { if (err) { return complete(err); } if (!body || !body.response) { return complete(null, false); } self.session.cookies.setCookie(request.cookie("steamLogin=" + self.session.steamid + "%7C%7C" + body.response.token), SteamAuth.COMMUNITY_BASE + "/"); self.session.cookies.setCookie(request.cookie("steamLoginSecure=" + self.session.steamid + "%7C%7C" + body.response.token_secure), SteamAuth.COMMUNITY_BASE + "/"); complete(null, true); } );
it('should serve plus-one-session (defined in hook-startup.chiml)', function (done) { let cookieJar = request.jar() let cookie = request.cookie('') let url = 'http://localhost:3010/plus-one-session' cookieJar.setCookie(cookie, url) request({url: url, jar: cookieJar}, function (error, response, body) { if (error) { return done(error) } sessionId = response.headers['set-cookie'][0].match(/connect\.sid=(.*?);/)[1] assert.equal(body, '1') return done() }) })
var getMoodleJar = function(req) { "use strict"; let jar = request.jar(); if (req && req.cookies && req.cookies.isuMoodleCookie && (req.cookies.isuMoodleCookie != '') ) { req.cookies.isuMoodleCookie.split(';').map(function (val) { jar.setCookie( request.cookie(val), 'http://moodle.isu.edu.tw' ); }); } return jar; }
it('plus-one-cookie should send set-cookie response with correct value', function (done) { let cookieJar = request.jar() let cookie = request.cookie('data=3') let url = 'http://localhost:3010/plus-one-cookie' cookieJar.setCookie(cookie, url) request({url: url, jar: cookieJar}, function (error, response) { if (error) { return done(error) } assert.equal(response.headers['set-cookie'][0], 'data=4; Path=/') return done() }) })
it('plus-one-session should plus session.data by one', function (done) { let cookieJar = request.jar() let cookie = request.cookie('connect.sid=' + sessionId) let url = 'http://localhost:3010/plus-one-session' cookieJar.setCookie(cookie, url) request({url: url, jar: cookieJar}, function (error, response, body) { if (error) { return done(error) } assert.equal(body, '2') return done() }) })