upstream-response-headers.mjs
sha256:b5f647cb9c409f563d4671fe3fc05ddea01fabfed9b41fc11cb923588e1c1baf
mirror: GitHub Phase A durable MCP OAuth (#270)
Human
minor
⚠ breaking
13 days ago
| 1 | /** |
| 2 | * When the gateway proxies with fetch().text(), the body is already decoded. |
| 3 | * Forwarding upstream Content-Encoding (e.g. br) causes browsers to ERR_CONTENT_DECODING_FAILED. |
| 4 | */ |
| 5 | |
| 6 | const STRIP_FROM_UPSTREAM_DECODED_BODY = new Set([ |
| 7 | 'content-encoding', |
| 8 | 'content-length', |
| 9 | 'transfer-encoding', |
| 10 | 'connection', |
| 11 | 'access-control-allow-origin', |
| 12 | 'access-control-allow-methods', |
| 13 | 'access-control-allow-headers', |
| 14 | 'access-control-allow-credentials', |
| 15 | 'access-control-expose-headers', |
| 16 | 'access-control-max-age', |
| 17 | ]); |
| 18 | |
| 19 | /** |
| 20 | * @param {Iterable<[string, string]>} entries - upstream Response.headers entries |
| 21 | * @returns {[string, string][]} |
| 22 | */ |
| 23 | export function filterUpstreamResponseHeadersForDecodedBody(entries) { |
| 24 | return [...entries].filter(([k]) => !STRIP_FROM_UPSTREAM_DECODED_BODY.has(k.toLowerCase())); |
| 25 | } |
File History
4 commits
sha256:b5f647cb9c409f563d4671fe3fc05ddea01fabfed9b41fc11cb923588e1c1baf
mirror: GitHub Phase A durable MCP OAuth (#270)
Human
minor
⚠
13 days ago
sha256:d8c648b20a4d53b2673c5c082ee7edfa7b2fc9b11080832da1f38807b6bf940b
fix(7C-L1b): route hosted delegation proposals through cani…
Human
minor
⚠
33 days ago
sha256:2827ba9e7632a4b141c50caf1e8f7d77abbc3515be20e7465f2bccb0ac4edf91
fix: repair endpoint now sets has_active_subscription when …
Human
minor
⚠
53 days ago
sha256:6a102aafafdfe7e70a24f4e59740200f0ee713ce7915f1b53e9d4ba5ee8b4410
Initial Muse snapshot
Human
85 days ago