Repository navigation
has Bidirectional streaming been implemented for grpc-web? #1416
|
Just would like to know if the bidirectional streaming was implemented - since it was on the roadmap for 2023+. Thanks |
Replies: 5 comments 2 replies
|
@c-npolyak Thanks for checking! But no sorry we haven't started the work just yet! We're currently working on a migration to TS, and will start evaluating the bidi streaming feature following that! Thanks for your patience! |
|
Do you have a sense of when you think you'll start bidirectional streaming for the client, or how long this will take? |
|
The interesting part is that I tried bidirectional and client streaming in C#/Avalonia running in browser via WebAssembly and it seems to work. I wonder why, C#/WebAssembly works in browser (via grpc-web) while javascript does not allow it. Seems like protoc does not generate the client proxies for the grpc client and bidirectional streaming calls. Is it correct? Then nodejs will not work for those streaming calls either. |
|
Hi @c-npolyak |
|
Still not implemented as of 2026 — and the blocker is fundamental: browsers cannot open raw TCP or HTTP/2 streams, and grpc-web's fetch/XHR-based transport cannot do client-streaming or bidirectional streaming from a tab. If you need real bidirectional streaming from a browser today, one alternative worth knowing about: grpc-over-datachannels speaks the actual gRPC wire protocol over a WebRTC RTCDataChannel instead of HTTP, so unary, server-streaming, client-streaming, and bidirectional streaming all work from a browser tab — peer-to-peer, with no grpc-web/Envoy proxy in the path. It is not grpc-web (the transport is a DataChannel, not HTTP; a proxy bridges to stock HTTP/2 backends when you need that), but for browser-to-service bidi it is a working option. The generated clients and servers are dependency-free and are graded against the official grpc-java/grpc-go interop suites. |
@c-npolyak Thanks for checking! But no sorry we haven't started the work just yet! We're currently working on a migration to TS, and will start evaluating the bidi streaming feature following that! Thanks for your patience!