# express-jwt-middleware

> An express middleware for jsonwebtoken.

Latest version **1.0.3** (published 2018-06-04) · ISC license · 0 weekly downloads

## Install

```sh
npm install express-jwt-middleware
pnpm add express-jwt-middleware
yarn add express-jwt-middleware
bun add express-jwt-middleware
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.0.3 |
| Published | 2018-06-04 |
| First published | 2018-02-20 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 1 |
| Unpacked size | 12 KB |
| Known vulnerabilities | 0 (+3 in 1 direct dependencies) |
| Install scripts | no |
| GitHub stars | 4 |
| Author | Melih Korkmaz - mk@count.ly |
| Maintainers | mkorkmaz |
| Keywords | jsonwebtoken, jwt, express, token, validation |

## Links

- npm: https://www.npmjs.com/package/express-jwt-middleware
- Repository: https://github.com/melihkorkmaz/express-jwt-middleware
- Issues: https://github.com/melihkorkmaz/express-jwt-middleware/issues
- npm.io page: https://npm.io/package/express-jwt-middleware

## Dependencies (1)

- [jsonwebtoken](https://npm.io/package/jsonwebtoken.md) ^8.1.1

## Alternatives

- [@mapbox/jsonlint-lines-primitives](https://npm.io/package/@mapbox/jsonlint-lines-primitives.md) — 5.3M weekly downloads
- [reftools](https://npm.io/package/reftools.md) — 3.5M weekly downloads
- [@hey-api/openapi-ts](https://npm.io/package/@hey-api/openapi-ts.md) — 3.5M weekly downloads
- [@mapbox/geojson-rewind](https://npm.io/package/@mapbox/geojson-rewind.md) — 2.4M weekly downloads
- [turbo-stream](https://npm.io/package/turbo-stream.md) — 1.7M weekly downloads

## Recent versions

- 1.0.3 (latest) — 2018-06-04
- 1.0.2 — 2018-02-21
- 1.0.1 — 2018-02-20
- 1.0.0 — 2018-02-20

## README

# JWT Express JS Validation Middleware

It has build for validate and decode jwt token (which is created by https://www.npmjs.com/package/jsonwebtoken library) at middleware level.

## Installation
```
  npm install express-jwt-middleware --save
```

## Usage
You can use it both app level and route level. You will get your decoded token data in request object as "req.tokenData".
````
const jwtMiddleware = require('express-jwt-middleware');
var jwtCheck = jwtMiddleware('secretkey')
app.get('/', jwtCheck, (req, res) => {
    res.send(req.tokenData);
});
````

### Options
You can pass string or object as parameter. If you pass string, code will be assume that it's your 
secret key for jwt.

Or you can send options object as:
````
var options = {
    cert : // If you create your jwt with a private key you need to add pem file path here
    secret : // Secret key for your jwt,
    ..anyJWTOptions // For more details please check https://www.npmjs.com/package/jsonwebtoken
}
var jwtCheck = jwtMiddleware(options)
app.get('/', jwtCheck, (req, res) => {
    res.send(req.tokenData);
});
````

If you set 'cert' and 'secret' at the same time, 'secret' will be used for jwt decode process. Please use correct one.

---
_Source: https://npm.io/package/express-jwt-middleware · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
