Have you tried the metadata.FromIncomingContext() function? You haven't shared your example code - i think that will be useful for others to help you.
On Thursday, March 31, 2022 at 3:44:02 PM UTC+11 [email protected] wrote: > Hi all, > > Currently I have a rpc like this: > *rpc SayHello (HelloRequest) returns (stream HelloReply) {}* > > Now I add a StreamClientInterceptor to catch response initial metadata, > but it block forever, and server shows that no request get, at least not > into the rpc function. > > The interceptor is similar to this example: > > https://github.com/grpc/grpc-go/blob/master/examples/features/interceptor/client/main.go#L90 > and I just add a line under L107 : > *responseMeta, err := s.Header() //<-- block here* > > Im sure that I can done in Python code, which is implement similar to: > > https://github.com/grpc/grpc/blob/master/examples/python/interceptors/headers/generic_client_interceptor.py#L33 > and adds code under L37: > *print(response_it.initial_metadata())* > > Can anyone tell me what is wrong of my Golang code? > Actually I can get header by wrapping grpc.ClientStream and received in > RecvMsg() > and I observed that I can only get header after SendMsg, but it doesn't > make sense :( > -- You received this message because you are subscribed to the Google Groups "grpc.io" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/f3f17602-0732-42e1-aebe-db576c080354n%40googlegroups.com.
