Comments (3)
I tried an alternative approach to more clearly separate the logic #2816
from undici.
Hmm, it sounds doable; but how do we handle the fact that we start the negotiation in the same way, it might seem counterintuitive to have to decide whether to use one or the other depending on the ALPN step.
A couple of things can bring some light on this, e.g., if not using TLS we cannot even try an H2 request, or if the flag is disabled, we do not do that.
One thing that can work is to remove the writeH2
and scope it to a mid-term dispatcher; that, if ALPN states to use H2 we simply use it instead, and pass the socket (pretty much as you opened PR, but the control is passed to that dispatcher, and the main dispatcher just passes the handler)
from undici.
+1 to the idea
from undici.
Related Issues (20)
- EventSource properties are not configured properly HOT 6
- test\client-request.js is consistently failing HOT 1
- TypeError: fetch failed due to ECONNREFUSED cannot be caught and handled HOT 2
- Unexpected token on class private field check with in operator HOT 21
- Option mismatch in RetryHandler HOT 2
- Uncaught TypeError: fetch failed. node:internal/deps/undici/undici:12345:11 HOT 1
- Retry with timeout HOT 7
- Is `fetch` API planned to support unix domain socket? HOT 5
- interceptors does not have any exported type HOT 1
- Nightly tests are failing HOT 1
- Can not upload file in nodejs 20 HOT 6
- [TS] Signature method of Interceptor using Dispatcher#compose HOT 4
- Fails to retrieve the first piece of data when downloading partial content with `RetryAgent` HOT 1
- Documentation/website has broken benchmark links
- Client network socket disconnected before secure TLS connection was established HOT 4
- TypeError: fetch failed - on Node v20.11.1 and v21.7.1, but works on v18.19.1 - likely issue with resolving redirect URL or IPv6 HOT 3
- BodyTimeoutError: Body Timeout Error | Closing process HOT 1
- Link to Contributing guide from the README HOT 2
- Undici cannot be required in --without-intl Node.js HOT 5
- Wrong information in docs README file HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from undici.