-
Notifications
You must be signed in to change notification settings - Fork 10k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add SetBrowserRequestStreamingEnabled extension method #50481
Add SetBrowserRequestStreamingEnabled extension method #50481
Conversation
Thanks for your PR, @campersau. Someone from the team will get assigned to your PR shortly and we'll get it reviewed. |
@MackinnonBuck can you please review this? Thanks! |
What does it happen on unsupported browsers. Does it fallback transparently? I'm a bit worried of adding this as it can create a performance cliff when not running on chrome/edge, which might be a nasty surprise when you run the app in Safari if you only tested on Chrome/Edge |
Yes, it does fallback transparently. This is the same behavior as for response streaming. I would be fine with closing / delaying this PR until it is avaiable in more browsers. |
If this stays opt-in, then it's "use if if you know what you are doing", no ? Maybe we could xml-doc describing the fallback behavior and perf/memory/blocking consequences. |
Related to this, it would be good to publicly expose whether streaming is supported (i.e. the result of calling |
Since this is .NET 9.0 I have no objection on this going in right now, since we have time to adjust |
Looks like this PR hasn't been active for some time and the codebase could have been changed in the meantime. |
@MackinnonBuck is this ready to merge or waiting on something else |
@danmoseley Nope, this can be merged. I'm going to re-run CI first, though. |
/azp run |
Azure Pipelines successfully started running 3 pipeline(s). |
Looks like this PR hasn't been active for some time and the codebase could have been changed in the meantime. |
/azp run |
Azure Pipelines successfully started running 3 pipeline(s). |
Add SetBrowserRequestStreamingEnabled extension method
Browser request streaming was implemented in dotnet/runtime#91295. This adds the corresponding extension method for it.
Description
Browser request streaming requires HTTP/2 or higher server support and is currently only supported in Chromium (Chrome / Edge / ...) e.g. it does not work in Firefox or Safari.
See also https://developer.chrome.com/articles/fetch-streaming-requests/
CC @pavelsavara