alvintanudjaja-grpc-lib v1.0.6
gRPC Library
This is a library for gRPC services. It contains base gRPC service and client that can be inherited. It also has sample middlewares and utilities.
Feel free to fork this project as well as add more middlewares and utilities specific to your respective projects and requirements.
Overview
Base service wraps gRPC service method and allows the addition of common pre-logic, post-logic and error hanlding middleware for all the calls.
Base client wraps gRPC method call and standardises the call to return Promise instead of callback. The Promise will resolve if successful and reject as well as throw an error if the call status is not successful.
Config util helps to load .env file by just importing config in your project. JWT util helps to generate and verify JWT token.
Middleware
Below are the details of the sample middlewares:
Middleware | Remarks |
---|---|
Audit | Audit user calls and log it for record purposes so that administrators can audit users activity |
Authenticate | Authenticate the user based on JWT token sent through authorization metadata |
Authorize | Authorize the user based on the service called and permissions stored in JWT token |
Error Handler | Simple error handler middleware to log the details to console |
Initialise | Initialise requests with necessary parameters, e.g. startTime for below monitor middleware |
Monitor | Monitor the performance of user calls |
Build
To install the dependencies, run:
npm i
To build the codes to dist, run:
npm run build
To publish the codes to be used by services, create npm account and login to your account in terminal by running:
npm login
Once you are logged in, you can publish by running:
npm publish
Related Projects
Contributors
Thanks goes to these people, in no particular order, without whom it would not be possible to complete this project.
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago