0.0.1 • Published 10 months ago

@luolapeikko/auth-header v0.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
10 months ago

@luolapeikko/auth-header

Typescript/Javascript http auth header class and parser.

Package includes:

  • Function and Type: AuthHeader - this function returns AuthHeader class as a Result instance when parse http auth header.
  • Function: isAuthHeaderString - this function check if string value is valid auth header string.
  • Function: isAuthHeaderInstance - this type guard function to check if value is AuthHeader class instance.
  • Class: AuthHeaderError - Common error class for when the Authorization header is missing or invalid.
  • Type: AuthorizationSchemeType - Authorization scheme type.
  • Const: authorizationSchemeTypes - Authorization scheme types array.
  • Interface: IAuthHeader - Interface type for base auth header instance.

examples

Handle both raw jwt token string and http bearer jwt token string

import {AuthHeader, isAuthHeader} from '@luolapeikko/auth-header';

function handleBearerToken(rawTokenOrAuthBearer: string): void {
	const bearerAuthOrString: string | AuthHeader<'BEARER'> = isAuthHeader(rawTokenOrAuthBearer) ? AuthHeader(rawTokenOrAuthBearer, ['BEARER']).unwrap() : rawTokenOrAuthBearer;
	const token = typeof bearerAuthOrString === 'string' ? bearerAuthOrString : bearerAuthOrString.getCredentials();
	// validate Bearer value
}

Handle basic auth credentials

function handleBasicAuth(authHeader: string | null | undefined): void {
	const basicAuth: AuthHeader<'BASIC'> = AuthHeader(authHeader, ['BASIC']).unwrap();
	// get and validate credentials
	const username = basicAuth.getUsername();
	const password = basicAuth.getPassword();
}
0.0.1

10 months ago