hapi-hiredis
v2.0.1
Published
Hapi's redis plugin
Downloads
9
Readme
hapi-hiredis
Hapi (^8.0) plugin for redis
with hiredis
parser.
Why use this instead of simple hapi-redis?
hiredis
parser is way faster than the plain javascript parser that comes by default with the noderedis
module.- Support for URLs. At least for me that's a major point, since I store all the data for connections in a simple URL string.
Install
npm install --save hiredis hapi-hiredis
Register plugin
You can pass as options either an URL (all are optionals, defaults to: no password, 127.0.01 and 6379) or host
and port
. Obviously passing an URL is way more convenient.
var Hapi = require('hapi');
var server = new Hapi.Server();
server.register({
register: require('hapi-hiredis'),
opts: { url: 'redis://:[email protected]:port' }
}, function (err) {
if (err) console.error(err);
});
Use plugin
The object returned by redis.createClient
is exposed on server.plugins['hapi-hiredis'].client
and binded to the context on routes and extensions as this.redis
.
server.route({
method: 'GET',
path: '/hashes',
handler: function (request, reply) {
var redis = request.server.plugins['hapi-hiredis'].client;
redis.hgetall('hashes', function (err, obj) {
reply(obj);
});
}
}, {
method: 'GET',
path: '/session',
handler: function (request, reply) {
var redis = this.redis;
redis.get('session', function (err, obj) {
reply(obj);
});
}
});
If for any reason you need to use the redis
library, then you can use it from server.plugins['hapi-hiredis'].library
.
License
Licensed under the terms of the ISC. A copy of the license can be found in the file LICENSE
.
© 2015, Jose-Luis Rivas <[email protected]>