kitex
kitex copied to clipboard
kitex服务端设置了GRPC协议,客户端调用报错Not Found: HTTP status code 404
前提:使用kitex框架,客户端和服务端通信,使用grpc协议
- kitex服务端如果是本地启动,在客户端设置client.WithHostPorts(addrs...),可以正常GRPC请求
- kitex服务端通过容器化部署,通过域名+端口暴露出来一个入口(入口大概是这样:a.b.c:8088),单独在postman打过去调用是没问题的,此时在客户端通过client.WithHostPorts(addrs...)初始化的,发起GRPC调用就会报以下的错误
Not Found: HTTP status code 404; transport: missing content-type field
请问初始化客户端时,需要调整什么参数,才能顺利打到服务端,目前是这些参数
client.WithTransportProtocol(transport.GRPC),
client.WithRPCTimeout(time.Second * 3),
client.WithConnectTimeout(time.Millisecond * 500),
client.WithFailureRetry(retry.NewFailurePolicy()),
client.WithErrorHandler(ClientErrorHandler),
client.WithGRPCKeepaliveParams(grpc.ClientKeepalive{ // 只有GRPC才可以使用
Time: ktime,
Timeout: ktimeout,
PermitWithoutStream: permitWithoutStream,
}),
client.WithHostPorts(addrs...),