Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@ministryofjustice/fb-jwt-client-node

Package Overview
Dependencies
Maintainers
12
Versions
39
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@ministryofjustice/fb-jwt-client-node

Form Builder JSON Web Token Client (Node)

  • 0.0.35
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
12
Created
Source

Form Builder JSON Web Token client (Node)

Base client for making requests to Form Builder platform endpoints that require JSON Web Tokens for authenctication

Requirements

Node

Installation

npm install @ministryofjustice/fb-jwt-client-node

Usage

Loading and initialising basic client

// load client class
const FBJWTClient = require('@ministryofjustice/fb-jwt-client-node')

// initialise client
const jwtClient = new FBJWTClient(serviceSecret, serviceToken, serviceSlug, microserviceUrl, [errorClass])
serviceSecret

Constructor will throw an error if no service secret is passed

serviceToken

Constructor will throw an error if no service token is passed

serviceSlug

Constructor will throw an error if no service slug is passed

microserviceUrl

Constructor will throw an error if no service url is passed

errorClass

By default, uses FBJWTClientError

Extending

// extend base class
class FBMyClient extends FBJWTClient {
  constructor (serviceSecret, serviceToken, serviceSlug, microserviceUrl, myVar) {
    super(serviceSecret, serviceToken, serviceSlug, microserviceUrl)
    // do something with additional constructor argument
    this.myVar = myVar
  }
}

const myClient = new FBMyClient('service_secret', 'service_token', 'myservice', 'http://myservice', 'my var')
// extend base class with custom error
class FBAnotherClient extends FBJWTClient {
  constructor (serviceSecret, serviceToken, serviceSlug, microserviceUrl) {
    // create custom error class
    class FBAnotherClientError extends FBJWTClient.prototype.ErrorClass {}
    super(serviceSecret, serviceToken, serviceSlug, microserviceUrl, FBAnotherClientError)
  }
}

Methods

  • generateAccessToken

    Generate JWT access token

  • createEndpointUrl

    Return user-specific endpoint

  • sendGet

    Handle client get requests

  • sendPost

    Handle client post requests

  • encrypt

    Encrypt data with AES 256

  • decrypt

    Decrypt data

  • encryptUserIdAndToken

    Encrypt user ID and token using service secret

  • decryptUserIdAndToken

    Decrypt user ID and token using service secret

  • handleRequestError

    Handle client response errors

  • createRequestOptions

    Create request options

  • throwRequestError

    Convenience function for throwing errors

Further details

See documentation in code for further details and fb-user-datastore-client-node and fb-submitter-client-node for examples.

FAQs

Package last updated on 16 Dec 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc