Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ekristen/connect-postgrest-session
Connect/Express Session Store using PostgREST
https://github.com/ekristen/connect-postgrest-session
Last synced: 2 days ago
JSON representation
Connect/Express Session Store using PostgREST
- Host: GitHub
- URL: https://github.com/ekristen/connect-postgrest-session
- Owner: ekristen
- License: mit
- Created: 2016-06-20T16:31:12.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2016-07-01T21:15:37.000Z (over 8 years ago)
- Last Synced: 2025-01-11T21:42:43.075Z (6 days ago)
- Language: JavaScript
- Size: 3.91 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Connect PostgREST Session
If you use PostgREST to talk to your database and you need session store, this is the module for you.
Used https://github.com/voxpelli/node-connect-pg-simple as a template for this,
A simple, minimal PostgREST session store for Express/Connect
## Installation
```bash
npm install connect-postgrest-session
```Once npm installed the module, you need to create the **session** table in your database. For that you can use the [table.sql] (https://github.com/ekristen/connect-postgrest-session/blob/master/table.sql) file provided with the module:
```bash
psql mydatabase < node_modules/connect-postgrest-session/table.sql
```Or simply play the file via a GUI, like the pgAdminIII queries tool.
## Usage
Examples are based on Express 4.
Simple example:
```javascript
var session = require('express-session');var SessionPostgrestStore = require('connect-postgrest-session')(session)
var sessionStore = new SessionPostgrestStore({
baseUrl: config.postgrest.baseUrl
})app.use(session({
store: sessionStore,
secret: process.env.FOO_COOKIE_SECRET,
resave: false,
cookie: { maxAge: 30 * 24 * 60 * 60 * 1000 } // 30 days
}));
```Advanced example showing some custom options:
```javascript
var pg = require('pg')
var session = require('express-session')var SessionPostgrestStore = require('connect-postgrest-session')(session)
app.use(session({
store: new SessionPostgrestStore({
baseUrl: config.postgrest.baseUrl,
headers: {
'Authorization: 'Bearer TOKEN'
}
})
secret: process.env.FOO_COOKIE_SECRET,
resave: false,
cookie: { maxAge: 30 * 24 * 60 * 60 * 1000 } // 30 days
}));
```Express 3 (and similar for Connect):
```javascript
var express = require('express');var SessionPostgrestStore = require('connect-postgrest-session')(session)
var sessionStore = new SessionPostgrestStore({
baseUrl: config.postgrest.baseUrl
})app.use(session({
store: sessionStore,
secret: process.env.FOO_COOKIE_SECRET,
cookie: { maxAge: 30 * 24 * 60 * 60 * 1000 } // 30 days
}));
```