gRPCurl 测试 gRPC 服务
- gRPCurl 是一种命令行工具,可提供与 gRPC 服务的交互。
- gRPCui 基于 gRPCurl,并为 gRPC 添加了交互式 Web UI,类似于 Postman 和 Swagger UI 等工具。
gRPCurl
gRPCurl 是由 gRPC 社区创建的命令行工具。 其功能包括:
- 调用 gRPC 服务,包括流式服务。
- 使用 gRPC 反射进行服务发现。
- 列出并描述 gRPC 服务。
- 适用于安全 (TLS) 和不安全(纯文本)服务器。
grpcurl 必须了解服务的 Protobuf 协定,然后才能调用它们。 有两种方法可以实现此目的:
- 在服务器上设置 gRPC 反射。 gRPCurl 会自动发现服务协定。
- 在 gRPCurl 的命令行参数中指定 .proto文件。
gRPC ASP.NET Core 包含 Grpc.AspNetCore.Server.Reflection 包,因此具有对 gRPC 反射的内置支持。 在应用中配置反射:
- 添加 Grpc.AspNetCore.Server.Reflection包引用。
- 在 Startup.cs中注册反射:
- AddGrpcReflection用于注册启用反射的服务。
- MapGrpcReflectionService用于添加反射服务终结点。
public void ConfigureServices(IServiceCollection services) { services.AddGrpc(); services.AddGrpcReflection(); } public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapGrpcService<GreeterService>(); if (env.IsDevelopment()) { endpoints.MapGrpcReflectionService(); } }); }
命令行说明
https://docs.microsoft.com/zh-cn/aspnet/core/grpc/test-tools?view=aspnetcore-3.1#use-grpcurl
gRPCui
也是使用 gRPC 反射自动发现 gRPC 服务。
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号