0.1.2 • Published 9 years ago

koa-session-redis2 v0.1.2

Weekly downloads
1
License
MIT
Repository
github
Last release
9 years ago

koa-session-redis2

Redis store-based session middleware for Koa. add hack: del sess by redis's client.

Based on koa-session

Build Status

Installation

$ npm install koa-session-redis2

Notice

Set your redis connection configuration in options.store

Example

example (using redis without specific configuration)

var session = require('koa-session-redis2');

var koa = require('koa');
var app = koa();

app.keys = ['some secret hurr'];
app.use(session({
    store: {
      host: process.env.SESSION_PORT_6379_TCP_ADDR || '127.0.0.1',
      port: process.env.SESSION_PORT_6379_TCP_PORT || 6379,
      ttl: 3600,
    },
  },
));

app.use(function *(){
  var n = this.session.views || 0;
  this.session.views = ++n;
  this.body = n + ' views';
});

// then u can del pre user's sess. eg: this.sesseion.del(pre_sid);

app.listen(3000);
console.log('listening on port 3000');

Semantics

This module provides "guest" sessions, meaning any visitor will have a session, authenticated or not. If a session is new a Set-Cookie will be produced regardless of populating the session.

API

Cookies

The cookies opts is set by cookie object, simply passed to cookie module. And the rest is same with koa-session;

Options

The cookie name is controlled by the key option, which defaults to "koa:sess". All other options are passed to ctx.cookies.get() and ctx.cookies.set() allowing you to control security, domain, path, and signing among other settings.

Session#isNew

Returns true if the session is new.

Destroying a session

To destroy a session simply set it to null:

this.session = null;

Del somebody's session by sid

To del a session simple use redis's client.

this.session.del(sid);

License

MIT