Comments (9)
/me admits to thinking it'd be cool if SW would automatically add itself to the Via
header.
from fetch.
That should throw a TypeError.
from fetch.
@jpmedley (and also @jakearchibald) should fetch()
return a response with an immutable Headers
object?
from fetch.
The alternative is introducing a new guard (response-cors
; for opaque we can reuse immutable
). Using immutable
everywhere for now seems simplest though. @KenjiBaheux thoughts?
from fetch.
Being able to add headers like this is kinda nice, but not essential. If we make them mutable, we should do the same with requests.
self.addEventListener('fetch', function(event) {
event.request.headers.append('foo', 'bar');
});
Of course, that shouldn't work with 'no-cors' requests, probably other kinds of requests too.
If editing headers on fetchEvent.request
s & responses returned by fetch throws now, it's something we can open up later.
from fetch.
Yeah, I guess I prefer immutable
for now then. Until someone comes up with a complete proposal.
from fetch.
Is it too soon to revisit the decision on this? It is already possible to achieve cloned headers for non-opaque requests via long-winded hacks (constructing an init object and body from the response/request). For responses it's easier to do this in a non-performant way - wait for the body before creating a response - than it is to do so using streams. It'd be good to make modifying responses in a performant way easier.
What are the reasons for not supporting mutability on same domain requests/responses? @annevk
from fetch.
We could revisit it in a new issue. Stuff we need to be clear about if we allow things like that is what it would mean for caches and such.
from fetch.
Ok, I'll create an issue, though others will have to fill in the details on caching etc. as nothing problematic occurs to me
from fetch.
Related Issues (20)
- Referrer determination should be done on updated URLs in main fetch
- Automatic decompression should sanitize `Content-Encoding` and `Content-Length` headers from the response HOT 1
- When there is an issue with the URL parameter, fetch does not have any errors
- add a method to get a Uint8Array to Body HOT 4
- Fetch with Flask or Microdot HOT 1
- Service worker "handle fetch" seems to assume it's called in parallel HOT 2
- Redirect loop handling not discussed
- Add compression dictionary negotiation and decoding to the fetch processing model HOT 4
- Reconsider default Accept values for images
- Fetch support for explicit resource management
- Consider renaming or replacing http3only? HOT 1
- [render-blocking] The links of "render-blocking" in fetch are vague HOT 2
- Define what consequences NULL bytes (0x00) or other invalid values in header names have HOT 1
- 0x00 byte (%00) in a data: URL
- fetch does not allow caching requests with a null client HOT 1
- Question about stream handling around fetch requests with integrity metadata HOT 3
- Allow `new Response` with 101 status code HOT 6
- Question regarding preflight requests using the original request destination HOT 1
- Expected behavior of Response.redirect(null)? HOT 1
- Spec unexpectedly requires caching 30x responses themselves — rather than caching the result of running HTTP-redirect fetch to follow the 30x redirects HOT 9
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 fetch.