gRPC reflection API service for use with gRPC-node.
This package provides an implementation of the gRPC Server Reflection Protocol service which can be added to an existing gRPC server. Adding this service to your server will allow clients such as postman to dynamically load the API specification from your running application rather than needing to pass around and load proto files manually.
Use the package manager npm to install @grpc/reflection
.
npm install @grpc/reflection
Any gRPC-node server can use @grpc/reflection
to expose reflection information about their gRPC API.
import { ReflectionService } from '@grpc/reflection';
const pkg = protoLoader.load(...); // Load your gRPC package definition as normal
// Create the reflection implementation based on your gRPC package and add it to your existing server
const reflection = new ReflectionService(pkg);
reflection.addToServer(server);
Congrats! Your server now allows any client to request reflection information about its API.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. The original proposal for this library can be found in gRFC L108
Please make sure to update tests as appropriate.