Skip to content

Prevent redirect loops with sessions since HTTP referrer header is unreliable and ensures sessions are saved upon redirect

License

Notifications You must be signed in to change notification settings

ladjs/koa-redirect-loop

Repository files navigation

koa-redirect-loop

build status code style styled with prettier made with lass license npm downloads

Prevent redirect loops with sessions since HTTP referrer header is unreliable and ensures sessions are saved upon redirect

Note that this package only supports koa-generic-session, since other packages do not expose a save method used in res.end override.

Table of Contents

Install

npm:

npm install koa-redirect-loop

Usage

const Koa = require('koa');
const session = require('koa-generic-session');
const RedirectLoop = require('koa-redirect-loop');

const redirectLoop = new RedirectLoop({
  defaultPath: '/',
  maxRedirects: 5,
  logger: console
});

const app = new Koa();
app.keys = [ 'secret' ];

app.use(session());
app.use(redirectLoop.middleware);

Options

  • getDefaultPath (Function) - function which accepts ctx argument and returns a path to fallback to, defaults to either /${ctx.request.locale} (e.g. if using @ladjs/i18n) or /
  • defaultPath (String) - path to fallback to, defaults to '/'
  • maxRedirects (Number) - maximum number of redirects to allow, defaults to 5
  • console (Object) - a logger instance, defaults to console

Contributors

Name Website
Nick Baugh http://niftylettuce.com/

License

MIT © Nick Baugh