Tag: cookie

节点路由护照当前用户ID

我正在使用的代码从cookie获取当前用户标识,但login的用户确实有另一个用户标识。 我正在为用户使用护照authentication。 我希望user_id是当前的护照用户user_id 。 当前的代码使用cookie用户ID: routes.jes app.get('/portal', isLoggedIn, function (req, res) { var user_id = req.cookies ? req.cookies.user_id : undefined; Box. find({ user_id: user_id }). sort('-updated_at'). exec(function (err, boxes) { if (err) return next(err); res.render('portal', { user: req.user, boxes: boxes }); }); }); 我试过改变 var user_id = req.cookies ? req.cookies.user_id : undefined; 与例如var user_id = […]

请求在CookieJar中设置Cookie,包括子域名

我有一堆JSON格式的cookie。 它们是从名为EditThisCookie的插件导出cookie的结果。 我试图parsingJSON cookie数组并将它们添加到cookiejar。 我这样做是这样的: JSONCookies.forEach(cookie => { let extensions = [ 'session=true', 'sameSite=no_restriction' ]; cookies.push(new ToughCookie.Cookie({ key: cookie.name, value: cookie.value, secure: cookie.secure || false, path: cookie.path, httpOnly: cookie.httpOnly || false, extensions: extensions })); // Set the uid property of object with users ID if(cookie.name === 'c_user') { this.uid = cookie.value; } }) 我将它们添加到请求的cookiejar: cookies.forEach(function(cookie) […]

Express jsredirectcookies不发送

我有2个独立的应用程序,让我们称之为login和仪表板。 这两个应用程序都有一个用反应写的UI和一个快速服务器。 在我的login应用程序中,当我通过login用户界面进行POST时,它会login到loginExpress服务器进行身份validation。 一旦通过身份validation,我设置一个cookie并redirect到我的仪表板url: res.cookie(cookie.key, cookie.access_token, { path: '/', domain: cookie.domain, httpOnly: true, maxAge: cookie.rememberExpiry }) res.redirect(dashboard_url) 但是,当我在仪表板应用程序中使用req.cookies ,我没有看到任何cookie。 当我从login界面进行POST时,确实看到一个networking调用,说明了响应头: Set-Cookie: mycookie=cookievalue; Max-Age=28800; Domain=.local.myurl.com; Path=/; Expires=Thu, 03 Nov 2016 19:20:39 GMT; HttpOnly 请注意,截至目前,时间是2016年11月3日11:28 GMT,所以它不是一个到期的问题。 为了testing我编辑了我的hosts文件,使得login.local.myurl.com&dashboard.local.myurl.com指向localhost。 是否有任何理由为什么req.cookies不在仪表板快递应用程序?

为会话设置服务器端cookie的正确方法

我有以下function,当用户点击某个端点时,在服务器上调用,例如/api/login我在服务器上处理它,因为我想设置服务器端Cookie来存储身份validation令牌。 目前看起来像这样: const createSession = (req, res, url) => { const apiCall = request.post(url, (err, response, body) => { // eslint-disable-line if (err) return res.sendStatus(500); else if (response.statusCode !== 200) return res.status(response.statusCode).send(body); const data = JSON.parse(body); const options = { path: '/', hostOnly: true, httpOnly: true, maxAge: 3300000 }; // 55 min expiration if (secrets.DOMAIN […]

无法销毁由Express创build的JavaScript中的cookie

对于OAuthstream程,我将访问令牌设置在服务器(Express)上的Cookie中,如下所示: res.cookie('name' , 'myname', {httpOnly: false, path:'/'}); res.cookie('access_token', accessToken); // on the client console.log(document.cookie); // displays "name=myname; access_token=12345" 当/如果访问令牌不再有效,我想销毁cookie。 所以在客户端上,如果服务器无法使用该访问令牌成功请求,我正在这样做: document.cookie = 'name=myname; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/'; console.log(document.cookie) // displays "access_token=12345" 所以出于某种原因,它将删除cookie的“名称”部分,而不是访问令牌。 我怎样才能彻底销毁cookies? 我看到了有关如何path应该是相同的,或者httpOnly设置为true的其他评论将阻止JavaScript变异的cookie,但我已经解决了所有这一切,仍然令牌坚持在cookie中。

Express.js:Cookie被保存得太晚

我认为这是因为Node.js的asynchronous性质。 我正在更改cookie的值,然后呈现一个新的页面。 然而,在呈现新页面时,该页面显示刚被覆盖的cookie的内容。 就好像cookie被保存了一步。 res.cookie('loginid',req.body.name,{maxAge:60000}); res.render('page1'); 在页面1中,我有: <% if(req.cookies.loginid){ %> cookie remembered. Hi, <%= req.cookies.loginid %>! <% } %> 例如:Cookie目前有loginid =“id1”。 我把它设置为id2,然后渲染page1。 然后我被发送到page1,当然,它显示id1。 如果我用id3replaceid2来重复这个过程,page1的内容会显示id2,依此类推。 我试着对res.cookie(…)函数做一个callback,但是里面没有任何东西被调用。 它看起来像: res.cookie('loginid',req.body.name,{maxAge:60000}, function(req,res){console.log('test');});

使用带有http分块传输的报头。 如何使用它设置cookie

使用预告片我想在页面stream式传输开始后设置一个cookie。 下面的代码尝试设置cookie。 它似乎返回正确的响应,但没有在浏览器中设置cookie(ff和chrome)。 var express = require('express'), http = require('http'), app = express(), server; app.use(app.router); app.all('*', function(req, res) { res.setHeader('Trailer', 'Set-Cookie'); res.setHeader('Content-Type', 'text/plain'); res.write("hi this is ogkla"); res.addTrailers({'Set-Cookie': "val=ogkla"}); res.end(); }); server = http.createServer(app).listen(80); module.exports = server; 响应 curl -iv –raw 'http://localhost/' * Adding handle: conn: 0x7fd87180aa89 * Adding handle: send: 0 * Adding handle: […]

在Express.js中不能使用connect-redis

我正在学习Express.js,并学习了如何使用cookie会话模块处理会话。 我试图使用快速会话,但我有问题。 以前,我使用cookie会话而不是快速会话,而memoryStore完美运行。 但是,我不能使用cookie-session的connect-redis,因为这个原因,我安装了express-session,但是使用它,我不能使用任何types的存储,也不能使用memoryStore。 Redis DB在redistogo上,它的URI看起来像这样:(为了安全起见,尽pipe这只是为了实践)redis:// redistogo:e34d3 ******************* **** f4bb@albacore.redistogo.com:10072 / 但是,当我运行“节点应用程序”,它打印一个错误。 我的package.json: { "name": "application-name", "version": "0.0.1", "author": "Me <me@gmail.com>", "license": "MIT", "private": true, "scripts": { "start": "node app" }, "dependencies": { "express": "4.xx", "cookie-parser": "1.xx", "express-session": "1.xx", "connect-redis": "2.xx" } } “npm ls”显示如下: ├─┬ connect-redis@2.0.0 │ ├── debug@0.8.0 │ └── redis@0.10.1 ├─┬ cookie-parser@1.0.1 […]

如何在cookie-session 1.0.2中传递cookie选项

我正在尝试学习Node的“cookie会话”模块。 https://github.com/expressjs/cookie-session 我很难理解如何传递cookie的选项。 例如到期。 默认似乎是一年! 这是关于cookie选项的说明: “其他选项传递给cookies.get()和cookies.set()允许您控制其他设置中的安全性,域,path和签名。 但我没有得到它! 我是否也需要cookies模块? 或者我以某种方式更改选项槽var session = require('cookie-session') ? 我已经尝试session.cookies.set() ,但似乎并没有工作。 我试图在“cookie-session”和“cookies”模块中读取源代码的线索,但是我不知道该找什么!

Azure移动服务javascript后端如何设置和读取cookie?

所以我有节点后端这个azure色的移动服务,但我需要存储一个cookie时,一个特定的API已被调用。 我有我的loginapi设置和正常工作,现在我想要的只是设置一个cookie,但我找不到有关cookie的azure文档中的任何东西。 所以基本上我怎样才能从Azure的JavaScript后端存储一个cookie,我怎么才能从表操作脚本等访问它来检查其有效性? 编辑:我检查了Express api的参考,这是azure色的说,它的请求和响应对象是从。 但即使使用response.cookie('token', 'value', {maxAge: 3600000})我仍然无法从另一个API上的请求对象访问它。