What gRPC language are you using?

On Thursday, June 27, 2019 at 4:56:03 AM UTC-7, ivan topchiisky wrote:
>
> Hello gRPC team, my name is Ivan and I am currently working on a project 
> that involves gRPC for client to server communication. So far everything is 
> going well and we are glad that choose gRPC, thumbs up for your good work.
>
> Lately I found myself in the following situation and i was hoping you can 
> show me the right way forwards. Initially my services were supposed to only 
> support unary calls and I wanted to create a mechanism that validates the 
> messages before they reach the service logic. That's why I thought using 
> interceptors will solve my problem. I created interceptor that returns new 
> ForwardingServerCallListener and I overrided the onMessage method so in 
> there I validate the incoming message and if it has malformed data, I 
> simply call call.sendHeaders, call.sendMessage and call.close to cancel the 
> call and return it to the sender. One other feature that this interceptor 
> has is, in case of validation failure the delegate() method of the 
> ForwardingServerCallListener returns empty(no operation) Listener, so no 
> further propagation of the servercall is made.
> For unary calls this so far works as intended, but now I need to support 
> streaming as well, and this approach does not seems to work. If a couple of 
> messages are being sent over the stream and a malformed one comes, sending 
> the headers breaks the server to client stream. And in general i feel for 
> streaming this is not the right approach. Can you point me to a solution 
> for this problem, validating the incoming messages over a stream with the 
> option of canceling a message if it is bad and doing so in interceptor?
>
> Cheers,
> Ivan.
>
>

-- 
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/6accc0c8-368f-437e-83b7-0a2d4798cbe6%40googlegroups.com.

Reply via email to