SkyeYoung commented on issue #12202:
URL: https://github.com/apache/apisix/issues/12202#issuecomment-3144037729

   Hi, First of all, thank you very much for providing such a good minimal 
reproduction environment.
   
   I spent a lot of time using `gdb` to trace functions in nginx, but to no 
avail.
   
   But @bzp2010 prompts me that nginx may not parse correctly without Header 
`Trailer`.
   
   So I tried change your minimal example:
   
   ```go
   // cmd/main.go
   func (s *server) SayHello(req *example.HelloRequest, stream 
grpc.ServerStreamingServer[example.HelloReply]) error {
   +    trailerMD := metadata.Pairs(
   +            "Trailer", "grpc-message, grpc-status",
   +    )
   +
   +    stream.SendHeader(trailerMD)    
        return status.Errorf(codes.Internal, "this error is expected")
   }
   ```
   
   **It works.**
   
   <img width="1234" height="142" alt="Image" 
src="https://github.com/user-attachments/assets/1fb19359-c2f2-4a47-b865-7d771bf3912d";
 />
   
   ---
   
   I'm not familiar with the standards of grpc, but ChatGPT told me that it 
seems to be normal for gRPC (only works with http/2) to not have this Header 
`Trailer`.
   
   I'm not quite sure yet; this requires discussion.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@apisix.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to