Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* feat: initial HTTP gateway specs This adds gateway specs under ./http-gateways directory. The aim is to document _current_ behavior (implementation in go-ipfs 0.13) and switch the way we do the gateway work to be specs-driven. Long term goal is to provide language and implementation agnostic specification that anyone can use to implement compatible gateways. * gateway: add Content-Range * gateway: registerProtocolHandler uri router * CODEOWNERS: add lidel for ./http-gateways * gateway: resolving an advanced DNSLink chain * gateway: only-if-cached HEAD behavior * gateway: suggestions from reviewers Co-authored-by: Adrian Lanzafame <adrianlanzafame92@gmail.com> Co-authored-by: Vasco Santos <vasco.santos@moxy.studio> Co-authored-by: Oli Evans <oli.evans@gmail.com> * gateway: include CIDv1 node in summary * gateway: reorder URI router section As suggested in #283 (comment) * gateway: add Denylists section * gateway: switch only-if-cached miss to 412 Rationale: ipfs/kubo#8783 (comment) * gateway: apply suggestions from review Co-authored-by: Thibault Meunier <thibmeu@users.noreply.github.com> * gateway: apply suggestions from Cloudflare #283 (review) * gateway: add X-Content-Type-Options * gateway: simplify dnslink summary https://github.com/ipfs/specs/pull/283/files#r898709569 * gateway: document 412 Precondition Failed https://github.com/ipfs/specs/pull/283/files#r898686654 * gateway: link to ipld codecs explainer https://github.com/ipfs/specs/pull/283/files#r898687052 * gateway: stub about handling traversal errors https://github.com/ipfs/specs/pull/283/files#r892845860 * gateway: expand HTTP caching considerations * gateway: editorial fixes Co-authored-by: Steve Loeppky <stvn@loeppky.com> * gateway: expand on Host header parsing https://github.com/ipfs/specs/pull/283/files#r898703765 * gateway: editorial fixes * gateway: X-Forwarded-Proto and X-Forwarded-Host * gateway: editorial fixes * gateway: X-Trace-Id optional header suggested in: #283 (comment) rationale: having specific name as a suggestion of 'best practice' in the specs will simplify debugging across ecosystem * gateway: Generated HTML with directory index Synthesis of ideas from: ipfs/kubo#8455 and ipfs/kubo#9058 Co-authored-by: Adrian Lanzafame <adrianlanzafame92@gmail.com> Co-authored-by: Vasco Santos <vasco.santos@moxy.studio> Co-authored-by: Oli Evans <oli.evans@gmail.com> Co-authored-by: Thibault Meunier <thibmeu@users.noreply.github.com> Co-authored-by: Steve Loeppky <stvn@loeppky.com>
- Loading branch information