Skip to content

wmyers/nodejs-jwt-authentication-sample

 
 

Repository files navigation

NodeJS JWT Authentication sample

Forked from https://github.com/auth0/nodejs-jwt-authentication-sample. Modified to only allow CORS access from http://localhost:8080

This is a NodeJS API that supports username and password authentication with JWTs and has APIs that return Chuck Norris phrases. How awesome is that?

Available APIs

User APIs

POST /users

You can do a POST to /users to create a new user.

The body must have:

  • username: The username
  • password: The password
  • extra: Some extra information you want to save from the user (It's a string). This could be a color or anything at all.

It returns the following:

{
  "id_token": {jwt}
}

The JWT is signed with the secret located at the config.json file. That JWT will contain the username and the extra information sent.

POST /sessions/create

You can do a POST to /sessions/create to log a user in.

The body must have:

  • username: The username
  • password: The password

It returns the following:

{
  "id_token": {jwt}
}

The JWT is signed with the secret located at the config.json file. That JWT will contain the username and the extra information that you sent at signup time.

Quotes API

GET /api/random-quote

It returns a String with a Random quote from Chuck Norris. It doesn't require authentication.

GET /api/protected/random-quote

It returns a String with a Random quote from Chuck Norris. It requires authentication.

The JWT must be sent on the Authorization header as follows: Authorization: Bearer {jwt}

Running it

Just clone the repository, run npm install and then node server.js. That's it :).

If you want to run it on another port, just run PORT=3001 node server.js to run it on port 3001 for example

Issue Reporting

If you have found a bug or if you have a feature request, please report them at this repository issues section. Please do not report security vulnerabilities on the public GitHub issue tracker. The Responsible Disclosure Program details the procedure for disclosing security issues.

License

MIT

About

A NodeJS API that supports username and password authentication with JWTs

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%