oada-lookup
v0.4.1
Published
JavaScript utility library to lookup OADA documents such as Well-Known (RFC 5785) resource, e.g., oada-configuration, openid-configuration, etc, and public OADA client registrations
Downloads
33
Maintainers
Readme
oada-lookup-js
JavaScript utility library to lookup OADA documents such as Well-Known (RFC 5785) resource, e.g., oada-configuration, openid-configuration, etc, and public OADA client registrations.
Getting Started
Installation
The library can be installed with npm
using
$ npm install oada-lookup
Running the tests, coverage, and style checks
The libraries test can be ran with:
$ npm test
The coverage report is generated by:
$ npm run cover
Gulp runs jshint
(lint) and jscs
(style) with:
$ gulp lint
$ gulp style
wellKnown(hostname, suffix, options, cb)
Fetch a Well-Known (RFC 5785) Resource. The hostname will automatically be parsed from any URL.
Parameters
hostname
{String} Hostname (or URL) hosting the Well-Known resource being
requested. Sub-domains and ports are be persevered; Protocol, path, query
parameters, and hash are dropped. It is assumed that the Well-Known resource is
hosted with TLS (https) Pull Request appreciated
suffix
{String} Well-Known resource suffix being requested.
options
{Object} containing at least the following properties:
timeout
{Number} Default: 1000 Timeout before HTTP request fails in ms.
cb
{Function} Result callback. It takes the form function(err, resource) {}
.
Usage Example
var lookup = require('oada-lookup');
var options = {
timeout: 500
};
lookup.wellKnown('provider.oada-dev.com', 'oada-configuration', options,
function(err, resource) {
console.log(err);
console.log(resource);
});
clientRegistration(clientId, options, cb)
Fetch a client registration from an OADA client id.
Parameters
clientId
{String} The OADA client id to lookup the client registration for. It
takes a form similar to email: id@domain
.
options
{Object} containing at least the following properties:
timeout
{Number} Default: 1000 Timeout before HTTP request fails in ms.
cb
{Function} Result callback. It takes the form function(err, registration){}
.
Usage Example
var lookup = require('oada-lookup');
var options = {
timeout: 500
};
lookup.clientRegistration('[email protected]', options,
function(err, registration) {
console.log(err);
console.log(registration);
});
jwks(uri, options, cb)
Fetch a Json Web Key Set (JWKS) from an URI.
Parameters
uri
{String} The URI containing the desired JWKS document. For example, the
value of the OpenID Connect openid-configuration jwks_uri
property.
options
{Object} containing at least the following properties:
timeout
{Number} Default: 1000 Timeout before HTTP request fails in ms.
cb
{Function} Result callback. It takes the form function(err, jwks){}
.
Usage Example
var lookup = require('oada-lookup');
var options = {
timeout: 500
};
lookup.jwks('provider.oada-dev.com/oidc/jwks', options,
function(err, jwks) {
console.log(err);
console.log(jwks);
});