kitex icon indicating copy to clipboard operation
kitex copied to clipboard

kitex服务端设置了GRPC协议,客户端调用报错Not Found: HTTP status code 404

Open zhouguanglong1 opened this issue 1 year ago • 0 comments

前提:使用kitex框架,客户端和服务端通信,使用grpc协议

  1. kitex服务端如果是本地启动,在客户端设置client.WithHostPorts(addrs...),可以正常GRPC请求
  2. 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...),

zhouguanglong1 avatar Oct 24 '24 11:10 zhouguanglong1