WebAssembly / WebAssembly/WASI
[v0.3] Request metadata
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 5.8k
- Forks
- 333
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 3
Description
Original context: https://github.com/WebAssembly/wasi-http/pull/3#discussion_r1122091615
There are certain pieces of metadata that are commonly associated with requests but aren't part of HTTP itself, e.g.:
- Peer IP address
- TLS session details (certificates, ciphers, etc)
- HTTP URL router match results (original pattern, parameters, etc)
This kind of metadata can be inserted into requests as headers, but this has historically been a source of security and name collision issues and I hope we can offer a better alternative.
A few options to consider:
- Add methods for the most common bits of metadata directly to the request type
- Add a generic "metadata"/"extensions" map to the request type (like hyper)
- Add a separate "metadata"/"context" argument to
handle
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 with the linked pull request discussion and compare the three proposed approaches: request methods, a metadata/extensions map, or a separate handle context argument. No implementation files or tests are named; done would require an agreed API design for exposing request metadata and corresponding specification changes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust, wasm
- Domain
- api, backend-api-design
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100