grpc-transcode
- :
.proto
文件的内容
添加proto
路径中最后的数字,会被用作 proto 的 id 做唯一标识,比如下面示例的 proto id
是 1
:
在指定 route 中,代理 grpc 服务接口:
- 注意: 这个 route 对应的 upstream 的属性
scheme
必须设置为grpc
- 代理 grpc 服务例子可参考:
curl http://127.0.0.1:9080/apisix/admin/routes/111 -H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1' -X PUT -d '{ "methods": ["GET"], "uri": "/grpctest", "plugins": { "grpc-transcode": { "proto_id": "1", "service": "helloworld.Greeter", "method": "SayHello" } }, "upstream": { "scheme": "grpc", "type": "roundrobin", "nodes": { "127.0.0.1:50051": 1 } }}'
测试
访问上面配置的 route:
在指定 route 中,代理 grpc 服务接口:
枚举类型
- enum_as_name
- enum_as_value
64位整型
- int64_as_number
- int64_as_string
-
- auto_default_values
- no_default_values
- use_default_values
- use_default_metatable
Hooks开关
- enable_hooks
- disable_hooks
测试 pb_option 参数
访问上面配置的 route:
"workflowKey":"#2251799813685260"
表示已成功。
curl http://127.0.0.1:9080/apisix/admin/routes/111 -H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1' -X PUT -d '{ "uri": "/grpctest", "plugins": {}, "upstream": { "scheme": "grpc", "type": "roundrobin", "nodes": { "127.0.0.1:50051": 1 } }}'