iis 配置网站详解,有没有专做于投融资的网站,西陆网,建立网站如何推广gRPCurl简介gRPCurl[1]是一个与gRPC服务器交互的命令行工具#xff0c;可认为是gRPC的curl工具。gRPCurl用于从命令行调用gRPC服务器支持的RPC方法#xff0c;gRPC使用二进制编码(protobuf), 不能利用常规的curl工具(早期的curl版本还不支持HTTP/2)。1. gRPCurl工具接受json编… gRPCurl简介gRPCurl[1]是一个与gRPC服务器交互的命令行工具可认为是gRPC的curl工具。gRPCurl用于从命令行调用gRPC服务器支持的RPC方法gRPC使用二进制编码(protobuf), 不能利用常规的curl工具(早期的curl版本还不支持HTTP/2)。1. gRPCurl工具接受json编码的消息(对人类和脚本更友好) 工具底层会转化为protobuf与服务器交互。2.gRPCurl 必须了解服务的Protobuf协议(服务的schema)才能调用它们 gRPCurl通过三种方式之一实现此目的• gRPC服务器添加gRPC反射• 直接读取proto源文件• 加载编译后的protoset文件 (包含已被编码的proto描述文件gRPCurl特性gRPCurl是由gRPC社区创建的命令行工具功能包括•调用gRPC服务包括流式服务•使用gRPC反射进行服务发现•列出并描述 gRPC服务•支持调用安全(TLS)或者不安全(plain-text)的gRPC服务ASP.NET Core设置grpc反射•添加Grpc.AspNetCore.Server.Reflection包引用•Startup.cs注册反射public void ConfigureServices(IServiceCollection services)
{services.AddGrpc();services.AddGrpcReflection();
}public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{app.UseRouting();app.UseEndpoints(endpoints {endpoints.MapGrpcServiceGreeterService();if (env.IsDevelopment()){endpoints.MapGrpcReflectionService();}});
}服务发现、服务调用grpcurl list/describe 可以列出gRPC服务端反射的protobuf1. grpcurl localhost:5001 listgreet.Greeter
grpc.reflection.v1alpha.ServerReflection2. grpcurl localhost:5001 describegreet.Greeter is a service:
service Greeter {rpc SayHello ( .greet.HelloRequest ) returns ( .greet.HelloReply );
}
grpc.reflection.v1alpha.ServerReflection is a service:
service ServerReflection {rpc ServerReflectionInfo ( stream .grpc.reflection.v1alpha.ServerReflectionRequest ) returns ( stream .grpc.reflection.v1alpha.ServerReflectionResponse );
} grpc -d ( Data for request contents) 传参调用gRPC方法3. grpcurl -d {name:World} localhost:5001 greet.Greeter/SayHello{message: Hello World
}gRPCuigRPCui[2] 是 gRPC 的交互式 Web UI,基于gRPCurl并提供一个GUI来发现和测试 gRPC 服务类似于 Postman 或 Swagger UI 等 HTTP 工具。•安装go install github.com/fullstorydev/grpcui/cmd/grpcuilatest•使用grpcui localhost:5001会立刻打开类Swagger窗口输入Request Header、Request Data,自行倒腾。就是这么神奇以上是利用gRPC服务反射获取protobuf的方式gRPCurl还支持直接读取proto文件。grpcurl -import-path ../protos -proto greet.proto -d {\name\:\World\} localhost:5001 greet.Greeter/SayHello引用链接[1] grpcur: https://github.com/fullstorydev/grpcurl[2] gRPCui: https://github.com/fullstorydev/grpcui#installation性感豹纹 HTTP1.1 Keep-Alive到底算不算长连接 Hostonly cookie是什么鬼 前端镜像打包这么慢你该反省一下dockerfile的姿势了 SignalR 开发到生产部署闭坑指南 难缠的布隆过滤器这次终于通透了点个在看你最好看仅代表此刻认知文章永久更新地址请移步原文