The rjks-api-worker-module creates a bridge to different workers of the api.
We distinguish between the main api-service-handler
and the different api-workers
, there is only one service-handler but there can be multiple api-workers for different tasks. The service-handler forwards the requests of the client to the targeted worker. The serive-handler validates the api-token
and signes the request so the different api-workers
does not have to deal with authentication or user databases.
$ npm i rjks-api-worker-module --save
const WorkerBridge = require('rjks-api-worker-module');
const worker = new WorkerBridge('YOUR-SECRET-HERE');
Replace the body of the token to the desired body, we recomend to fill this uup with general user infoormations like username, email and permissions. Replace the existing Authorization-Header
with the new Token and pipe the request to the desired api-worker.
const token = await worker.signTaskId({test: 'Hello World!'}, '3s'); //The duration parameter is optional, default is 10m
req.headers['authorization'] = token;
Replace the body of the token to the desired body, we recomend to fill this uup with generaal user infoormations like username, email and permissions.
await worker.validateTaskId(req.headers['authorization'])
.then(data => {
console.log(data); //The Token is valid, the object data contains the body from the api-service-handler
}).catch(error => {
console.error(error); //The Token is invalid, either it has expired or the token is fake
});
This package has been created by Robert J. Kratz