Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    redisuripublic

    redisuri

    Validate and parse Redis URI connection schemes

    Redis URI Connection Scheme

    The URI connection scheme expects the following parameters:

    Component Required? Description
    redis:// Required A protocol prefix to indentifying this as URI connection format
    auth@ AUTH password to connect to the redis instance
    host Required A network location (e.g. hostname or IP address) of the redis server
    :port The server port assigned to the redis process; defaults to 6379
    /database An available redis database number; defaults to 0

    API

    parse(uri)

    Parse the passed uri into an object containing four properties: auth, host, port, db. Note that if no AUTH password is provided, the auth property is set to null.

    var redisuri = require('redisuri');
     
    console.log(redisuri.parse('redis://localhost:6379'));
    // => { auth: null, host: 'localhost', port: 6379, db: 0 }
     
    console.log(redisuri.parse('redis://authstring@192.168.1.1:6379/7'));
    // => { auth: authstring, host: '192.168.1.1', port: 6379, db: 7 }

    validate(uri)

    Ensures that the passed uri contains the redis: protocol and specifies a hostname. Throws a TypeError if either condition fails. If successful, returns the uri for convienient wrapping with parse.

    var redisuri = require('redisuri');
     
    var uri = 'redis://localhost:6379';
    var bad = 'localhost';
     
    console.log(redisuri.validate(uri));
    // => 'redis://localhost:6379'
     
    console.log(redisuri.validate(bad));
    // => TypeError: A protocol must be specified in the Redis URI connection scheme (e.g. redis:)

    Tests

    Production ready. To run the full unit test suite:

    npm install
    npm test

    Contribute

    PRs are welcome! For bugs, please include a failing test which passes when your PR is applied.

    install

    npm i redisuri

    Downloadsweekly downloads

    7

    version

    1.1.2

    license

    MIT

    homepage

    github.com

    last publish

    collaborators

    • avatar