我在通过 ngrok 公开 gRPC 服务器时遇到一些问题。
我已经关注并从这里下载了演示代码。
通过 localhost 连接没问题,但通过 ngrok 连接会导致以下错误:
捕获错误:gRPC 错误(2,HTTP/2 错误:连接错误:连接被强制终止。(错误代码:10))
这是我在文件中用于 ngrok 的隧道配置~/.ngrok2/ngrok.yml:
tunnels:
grpc:
proto: http
addr: 8080
bind_tls: true
region: eu
inspect: true
Run Code Online (Sandbox Code Playgroud)
这就是我到目前为止所做的:
dart bin/server.dartngrok grpclib/src/client.dart以使用forwarding来自 ngrok 的 urldart bin/client.dart尽管服务器正在侦听 8080,但客户端正在尝试通过 https 标准端口 443 连接到 ngrok 的 url。
我正在考虑使用 HTTP2(gRPC 所依赖的),但根据此ngrok 应该支持它(我正在运行 version 2.3.35)。
我错过了什么或做错了什么?
结果发现ngrok这个选项的表现并不好http。
切换来proto:tcp解决我的问题。
我想这是因为 ngrok 在选择proto: http!时期望 gRPC 未提供的东西
| 归档时间: |
|
| 查看次数: |
4454 次 |
| 最近记录: |