@villedemontreal/auth-oidc-plugin-superagent
TypeScript icon, indicating that this package has built-in type declarations

1.1.1 • Public • Published

Description

This is the HTTP client binding for the Superagent library.

It provides an implementation of IHttpClient, to use Superagent for all OIDC internal calls, and it provides additional plugins which enable authentication, logging and correlation ID injection.

This library belongs to a monorepo. Please visit https://github.com/VilledeMontreal/authentication-nodejs-lib for more information.

Plugins

Usage

npm install superagent @villemontrea/auth-oidc-plugin-superagent
npm install @types/superagent --save-dev
import * as superagent from 'superagent';
import {
  authenticator,
  createSession,
  requestLogger,
} from '@villedemontreal/auth-oidc-plugin-superagent';
// configure
const session = createSession({
  authMethod: 'client_secret_basic',
  client: {
    id: 'client',
    secret: 'clientSecret',
  },
  issuer: 'http://localhost:5000',
  scopes: ['openid', 'profile'],
});
// custom auth for each http call:
const res = await superagent
  .get('http://localhost:4004/secured/profile')
  .use(requestLogger(session.logger))
  .use(authenticator(session));
console.log(res.status, res.body);
// or configure auth once for all http calls:
const myAgent = superagent.agent().use(authenticator(session));
// then each call will be automatically authenticated
const res2 = await myAgent.get('http://localhost:4004/secured/profile');
console.log(res2.status, res.body);

Documentation

See Documentation.

Examples

See Superagent client

Readme

Keywords

Package Sidebar

Install

npm i @villedemontreal/auth-oidc-plugin-superagent

Weekly Downloads

54

Version

1.1.1

License

MIT

Unpacked Size

134 kB

Total Files

43

Last publish

Collaborators

  • electrotype
  • psionikangel
  • olivieralbertini
  • sdriton
  • joscelynjean
  • steph-lebl
  • livetocode