Request for early feedback: Fetch server API
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 122k
- Forks
- 37.3k
- Avg merge
- 4d 2h
- Merged PRs (30d)
- 283
Description
As part of the new unified http API strategic initiative, I am working on a new WinterTC/TC55 proposal for a new "Fetch Server API".
A key goal of this is a server API that is runtime agnostic; and in particular not-Node.js specific. It also covers all versions of http (h1, h2, h3).
You can find the rendered draft here: https://proposal-fetch-server.jasnell.me/
Github repo for issues/discussion here: https://github.com/jasnell/proposal-fetch-server
Some background reading for ideas leading into this:
- https://www.jasnell.me/posts/http-server-api-draft
- https://www.jasnell.me/posts/fetch-needs-error-codes
- https://www.jasnell.me/posts/fetch-is-not-enough
- https://www.jasnell.me/posts/quic-comes-to-node
Note: it is well established that the current standard definitions of the fetch Request/Response/etc APIs are not entirely suitable for server side use given a strict reading of the specification. There's no reason to rehash those arguments. A goal of this work is to address those limitations.
This is NOT YET an official TC55 work item. It is a draft proposal that I will be presenting to the committee at the next meeting. Before then, I'm soliciting feedback on the design.
@nodejs/quic @nodejs/http @nodejs/http2 @nodejs/net
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the rendered Fetch Server API draft and the linked proposal repository, then review the background posts for the design context. Done means providing actionable feedback on the runtime-agnostic API design before its proposed TC55 presentation.
Written by the indexing model from the issue text.
Assessment
- Domain
- api, networking
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100