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; }
function RequestHandler(dubAPI) { this._ = {}; this._.dubAPI = dubAPI; this._.cookieJar = request.jar(); this._.ticking = false; this._.limit = 10; this._.queue = []; this._.sent = 0; //Bind functions once instead of every time we need them this._tick = utils.bind(this._tick, this); this._decrementSent = utils.bind(this._decrementSent, this); }
// 获取cookie getCookies(finnalLoginUrl) { return new Promise((resolve, reject) => { let j = request.jar(); request.get({url: finnalLoginUrl, jar: j}, function (error, reponse, body) { let cookies = j.getCookieString(finnalLoginUrl); resolve(cookies); }) }) }
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() }) })
describe('Carrier ', function () { describe('#get()', function () { it('should call the promise#get()', function () { }); }); describe('#jar()', function () { it('should equal to request.jar', function () { assert.equal(request.jar, Carrier.jar); }); }); describe('#post()', function () { it('should call the promise#post()', function () { }); }); });
//获取base64格式的验证码图片 task_code.push(function (callback) { var $ = cheerio.load(html); var img_url = 'http://mp.weixin.qq.com' + $("#verify_img").attr('src'); img_url = `http://mp.weixin.qq.com/mp/verifycode?cert=${(new Date).getTime() + Math.random()}` cert = img_url.split('=')[1]; var j = request.jar(); request.get({ url: img_url, encoding: 'base64', jar: j }, function (err, response, body) { if (err) return callback(err); var cookie_string = j.getCookieString(img_url); code_cookie = cookie_string; callback(null, body); }) })
function removeCookies() { jar = request.jar(); }
/** * Creates a new cookie jar. * @param callback - Function that gets called when the cookie jar is created. */ function createCookiesJar(callback) { // Create the cookies jar file fs.writeFile('cookies.json', '', function (err) { if (err) { console.error(err); return; } // Create an empty cookie jar, which will be filled with cookies var cookieJar = request.jar(new FileCookieStore('cookies.json')); callback(cookieJar); }); }
function Workflowy(auth, jar) { this.jar = jar ? request.jar(jar) : request.jar() this.request = request.defaults({ jar: this.jar, json: true }) this.sessionid = auth.sessionid this.includeSharedProjects = auth.includeSharedProjects if (!this.sessionid) { this.username = auth.username || auth.email this.password = auth.password || '' this.code = auth.code || '' this._lastTransactionId = null } }
// Now accepts a PSKKey. No longer requires authentication cookies, so allows for a permanent connection. // Cookie method left in for completeness var Bravia = function(ip, pskkey, callback) { var that = this; this.ip = ip; this.device = ip; this.nickname = 'Pi'; this.pskKey = pskkey; this.uuid = uuid.v1(); this.cookieJar = request.jar(new FileCookieStore('cookies.json')); this.commands = {}; if(callback !== undefined) { this.auth(function() { callback(that); }); } }
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() }) })
// 获取cookie getCookies(finnalLoginUrl) { return new Promise((resolve, reject) => { let j = request.jar(); request.get({ url: finnalLoginUrl, jar: j }, function (error, reponse, body) { let cookies = j.getCookieString(finnalLoginUrl); resolve(cookies); }); }); }
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() }) })