1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
docs / early-hints.md [blame]
# 103 Early Hints
Contact: net-dev@chromium.org
As of version 103, Chrome supports
[Early Hints](https://datatracker.ietf.org/doc/html/rfc8297).
Early Hints enable browsers to preload subresources or preconnect to servers
before the main response is served. See the
[explainer](https://github.com/bashi/early-hints-explainer/blob/main/explainer.md)
how it works.
## What’s supported
Chrome supports [preload](https://w3c.github.io/preload/) and
[preconnect](https://w3c.github.io/resource-hints/#dfn-preconnect) in
Early Hints for top-level frame navigation.
## What’s not supported
To reduce security and privacy implications, the HTML and Fetch living standards
have some restrictions on when Early Hints can be handled. Chrome ignores Early
Hints sent in the following situations to comply these specifications.
* Early Hints sent on subresource requests
* Early Hints sent on iframe navigation
* Early Hints sent on HTTP/1.1 or earlier
Chrome ignores the second and following Early Hints responses. Chrome only
handles the first Early Hints response so that Chrome doesn't apply inconsistent
security policies (e.g. Content-Security-Policy).
Chrome doesn’t handle
[dns-prefetch](https://w3c.github.io/resource-hints/#dfn-dns-prefetch) and
[prefetch](https://w3c.github.io/resource-hints/#dfn-prefetch) in Early Hints
yet. We consider supporting them in the future.
## Checking Early Hints preload is working
If a resource is preloaded by Early Hints, the corresponding
[PerformanceResourceTiming](https://w3c.github.io/resource-timing/#sec-performanceresourcetiming)
object reports `initiatorType` is "early-hints".
```
performance.getEntriesByName('https://a.test/style.css')[0].initiatorType
// => 'early-hints'
```
### Reliability of `initiatorType`
Due to an implementation limitation, `initiatorType` may not always set to
"early-hints". See
[the proposal](https://docs.google.com/document/d/1V7xX2cRNxcsuIrtZk4srdZuqXynnYlPG9fFDnELXC_Y/edit?usp=sharing)
for more details.