Is your feature request related to a problem? Please describe.
I'm using graphql-sse with Apollo Client following the official recipe: https://the-guild.dev/graphql/sse/recipes#with-apollo
The graphql-sse library uses the Fetch API internally (not the native EventSource API) because it needs to send POST requests with a GraphQL operation body — something EventSource doesn't support (GET only).
As a result, Chrome categorizes these requests as fetch type instead of eventsource type. The extension correctly detects SSE connections via the Accept: text/event-stream header in Network.requestWillBeSent, but Network.eventSourceMessageReceived is never fired by Chrome for fetch-based streaming responses — so subscription messages are never captured.
Describe the solution you'd like
Support fetch-based SSE streaming responses in addition to native EventSource. When a request with Accept: text/event-stream is detected and the response has Content-Type: text/event-stream, the extension should parse the SSE event stream from the response body using Network.dataReceived or Fetch.dataReceived Chrome DevTools Protocol events, rather than relying solely on Network.eventSourceMessageReceived.
Additional context
graphql-sse is the most widely used SSE library for GraphQL subscriptions (by The Guild). Its Apollo Client integration always uses fetch() because the GraphQL subscription query must be sent in the POST body. This means the extension currently cannot track subscriptions for any graphql-sse user.
The relevant code in useSSEListener.ts that relies on Network.eventSourceMessageReceived: https://github.com/warrenday/graphql-network-inspector/blob/master/src/hooks/useGraphqlSubscriptions/useSSEListener.ts
Is your feature request related to a problem? Please describe.
I'm using
graphql-ssewith Apollo Client following the official recipe: https://the-guild.dev/graphql/sse/recipes#with-apolloThe
graphql-sselibrary uses the Fetch API internally (not the nativeEventSourceAPI) because it needs to send POST requests with a GraphQL operation body — somethingEventSourcedoesn't support (GET only).As a result, Chrome categorizes these requests as
fetchtype instead ofeventsourcetype. The extension correctly detects SSE connections via theAccept: text/event-streamheader inNetwork.requestWillBeSent, butNetwork.eventSourceMessageReceivedis never fired by Chrome for fetch-based streaming responses — so subscription messages are never captured.Describe the solution you'd like
Support fetch-based SSE streaming responses in addition to native
EventSource. When a request withAccept: text/event-streamis detected and the response hasContent-Type: text/event-stream, the extension should parse the SSE event stream from the response body usingNetwork.dataReceivedorFetch.dataReceivedChrome DevTools Protocol events, rather than relying solely onNetwork.eventSourceMessageReceived.Additional context
graphql-sseis the most widely used SSE library for GraphQL subscriptions (by The Guild). Its Apollo Client integration always usesfetch()because the GraphQL subscription query must be sent in the POST body. This means the extension currently cannot track subscriptions for anygraphql-sseuser.The relevant code in
useSSEListener.tsthat relies onNetwork.eventSourceMessageReceived: https://github.com/warrenday/graphql-network-inspector/blob/master/src/hooks/useGraphqlSubscriptions/useSSEListener.ts