Fix Strawberry Shake SSE subscriptions not streaming on Blazor WebAss…#16
Open
cliedeman wants to merge 2 commits into
Open
Fix Strawberry Shake SSE subscriptions not streaming on Blazor WebAss…#16cliedeman wants to merge 2 commits into
cliedeman wants to merge 2 commits into
Conversation
…embly Subscriptions over the HTTP (Server-Sent Events) transport only delivered events after the connection closed on Blazor WebAssembly. The browser fetch based HttpClient buffers the whole response body unless per-request response streaming is enabled, so the SSE reader never observed an event until the stream ended. HttpConnection now sets the WebAssemblyEnableStreamingResponse request option for subscription operations via GraphQLHttpRequest.OnMessageCreated, so events surface as they arrive. The option is read only by the browser HTTP handler (ignored elsewhere) and is the default on .NET 10 and later, so query and mutation behavior and non-WASM clients are unaffected. Refs ChilliCream#6944 Refs ChilliCream#8555 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
StarWarsOnReviewSubGraphQLSSETest exercises the HTTP (Server-Sent Events) subscription transport, but it also registered a WebSocket client that was never resolved: the generated client wires the subscription executor on IHttpConnection, so the WebSocket registration was dead and made the test read like a WebSocket test. Remove the unused AddWebSocketClient registration. The StrawberryShake.Transport.WebSockets using is kept because the shared TestServerHelper lives in that namespace, with a comment so it is not mistaken for a WebSocket transport dependency. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
…embly
Subscriptions over the HTTP (Server-Sent Events) transport only delivered events after the connection closed on Blazor WebAssembly. The browser fetch based HttpClient buffers the whole response body unless per-request response streaming is enabled, so the SSE reader never observed an event until the stream ended.
HttpConnection now sets the WebAssemblyEnableStreamingResponse request option for subscription operations via GraphQLHttpRequest.OnMessageCreated, so events surface as they arrive. The option is read only by the browser HTTP handler (ignored elsewhere) and is the default on .NET 10 and later, so query and mutation behavior and non-WASM clients are unaffected.
Refs ChilliCream#6944
Refs ChilliCream#8555