curli-jwt-authentication-module v0.0.1-beta.0
curli-jwt-authentication-module
Node Jsonwebtoken (Jwt Authentication) implementation for the Curli framework.
Installation
Install by npm
npm install --save curli-jwt-authentication-moduleBasic Usage
1 - In the configurations file, declare de followings properties:
@JWT_SECRET: (string) The secret. @JWT_ALGORITHM (boolean) An algorithm supported, chcke jsonwebtoken documentation. @JWT_TOKEN_EXPIRES_IN (number|string) expressed in seconds or a string describing a time span zeit/ms
Eg:
60,"2 days","10h","7d". A numeric value is interpreted as a seconds count. If you use a string be sure you provide the time units (days, hours, etc), otherwise milliseconds unit is used by default ("120"is equal to"120ms").
2 - Attach the module to the app:
import {JwtAuthenticationModule} from "curli-jwt-authentication-module";
app.addModule(new JwtAuthenticationModule());3 - Create a token with the user information and send it back to the front:
const user = {name: 'John', id: 'q345nlkdfh4'};
const token = this.tokenService.sign(user);4 - In each request, send the token into the authorization header:
Authorization: <token>5 - Get the user into the request:
public async processRequest(request: Request): Promise<JsonResponse> {
const user = request.getUser();
}Commands
npm run build: Build the project (Jwt authentication module).npm run build:clean: Delete first the dist folder and build it.npm run clean: Delete the dist folder.npm run test: Execute the tests.npm run test:coverage: Execute the tests and calculate the coverage.npm run lint: Check the code using the rules in .eslintre.jsnpm run lint:fix: Check the code and try to fix it.
License
MIT
6 years ago