Note that there are some explanatory texts on larger screens.

plurals
  1. POWhy do I see a new sess: key in redis on every request?
    primarykey
    data
    text
    <p>I have a simple node.js server testing the connect-redis module as a session store. It all works but I've noticed that I get a new sess: key in redis on every single request. I expected only one key since there is only one session.</p> <p><img src="https://i.stack.imgur.com/40ZZ2.png" alt="redis-cli showing multiple sess: keys"></p> <p>Here's my code :</p> <pre><code>var connect = require('connect'); var util = require("util"); var RedisStore = require("connect-redis")(connect); var http = require('http'); var app = connect() .use(connect.cookieParser('keyboard cat')) .use(connect.query()) .use(connect.session( { secret:"elms", store:new RedisStore({prefix:'sid_'}), cookie:{maxAge:60000, secure:false} })) .use(function(req, res, next) { var sess = req.session; if (sess.views) { res.setHeader('Content-Type', 'text/html'); res.write("&lt;p&gt;" + util.inspect(req.cookies) + "&lt;/p&gt;"); sess.basket = sess.basket || {book1:0, book2:0, book3:0}; if(req.query.buyBook1) {sess.basket.book1 ++;} if(req.query.buyBook2) {sess.basket.book2 ++;} if(req.query.buyBook3) {sess.basket.book3 ++;} if(req.query.expiresession) { sess.cookie.maxAge = 0; } res.write('&lt;p&gt;views: ' + sess.views + '&lt;/p&gt;'); res.write('&lt;ul&gt;\ &lt;li&gt;book1 ' + sess.basket.book1 + ' - &lt;a href="/?buyBook1=true"&gt;Add&lt;/a&gt;&lt;/li&gt;\ &lt;li&gt;book2 ' + sess.basket.book2 + ' - &lt;a href="/?buyBook2=true"&gt;Add&lt;/a&gt;&lt;/li&gt;\ &lt;li&gt;book3 ' + sess.basket.book3 + ' - &lt;a href="/?buyBook3=true"&gt;Add&lt;/a&gt;&lt;/li&gt;\ &lt;/ul&gt;\ &lt;a href="/?expiresession=true"&gt;Expire session&lt;/a&gt;'); res.write('&lt;p&gt;expires in: ' + (sess.cookie.maxAge / 1000) + 's&lt;/p&gt;'); res.write('&lt;p&gt;httpOnly: ' + sess.cookie.httpOnly + '&lt;/p&gt;'); res.write('&lt;p&gt;path: ' + sess.cookie.path + '&lt;/p&gt;'); res.write('&lt;p&gt;domain: ' + sess.cookie.domain + '&lt;/p&gt;'); res.write('&lt;p&gt;secure: ' + sess.cookie.secure + '&lt;/p&gt;'); sess.views ++; } else { sess.views = 1; } res.write("&lt;p&gt;" + util.inspect(req.cookies) + "&lt;/p&gt;"); res.end('welcome to the session demo. refresh!'); }); http.createServer(app).listen(3000); </code></pre> <p>I've noticed that the req.session.cookie.domain is always null. I'm on windows 8 and using the hosts file to map 127.0.0.1 to www.gaz-node.com, which is what I exepected the cookie domain to be at the server. Could be related.</p> <p>Any ideas? Thanks</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload