auth-bearer-parser
v1.0.2
Published
This is a parsing middleware for Bearer tokens that can be used with the Express framework. Parse the `Authorization` header and assign the Bearer token to `req.token`.
Downloads
32
Maintainers
Readme
auth-bearer-parser
This is a parsing middleware for Bearer tokens that can be used with the Express framework.
Parse the Authorization
header and assign the Bearer token to req.token
.
Installation
npm
$ npm install auth-bearer-parser
yarn
$ yarn add auth-bearer-parser
Usage
TypeScript
import express, { Request, Response } from 'express';
import authBearerParser from 'auth-bearer-parser';
const app = express();
app.use(authBearerParser());
//=> now you have access to req.token, which contains the Bearer token
app.get('/', (req: Request, res: Response) => {
console.log(req.token);
...
});
...
JavaScript
ES Module
import express from 'express';
import authBearerParser from 'auth-bearer-parser';
const app = express();
app.use(authBearerParser());
//=> now you have access to req.token, which contains the Bearer token
app.get('/', (req, res) => {
console.log(req.token);
...
});
...
CommonJS
Note that you should be require('...').default
.
const express = require('express');
const authBearerParser = require('auth-bearer-parser').default;
const app = express();
app.use(authBearerParser());
//=> now you have access to req.token, which contains the Bearer token
app.get('/', (req, res) => {
console.log(req.token);
...
});
...
API
authBearerParser(options)
-> void
options
Optional
Type: object
isThrowError
Optional
Type: boolean
Default: false
If true, throw error when bearer token is invalid.
The error objects thrown are as follows.
| status | message |
| ------ | ------------------------------------------------------------------------------------- |
| 401 | authorization header missing |
| 400 | invalid token type: ${auth-scheme}※auth-scheme
is Basic
or Digest
and so on |
| 401 | token missing |
To catch errors thrown and continue processing, the default error handling of express can be changed to any error by extending it. An example is shown below.
import express from 'express';
import authBearerParser from 'auth-bearer-parser';
const app = express();
app.use(authBearerParser({ isThrowError: true })); // throw error when bearer token is invalid
// some kind of processing (API implementation by router, etc.)
// override express default error handlers (https://expressjs.com/en/guide/error-handling.html#writing-error-handlers)
app.use((err, req, res, next) => {
// you can access property `status` and `message`
res.status(err.status | 500).json({ message: err.message });
});