@@ -11,15 +11,28 @@ Translate IDs: typedefdef-bodyinit bodyinit,dictdef-requestinit requestinit,type
11
11
</pre>
12
12
13
13
<pre class=anchors>
14
- url:https://tools.ietf.org/html/rfc7230#section-3.1.1;text:method;type:dfn;spec:http
15
- url:https://tools.ietf.org/html/rfc7230#section-3.2;text:field-name;type:dfn;spec:http
16
- url:https://tools.ietf.org/html/rfc7230#section-3.2;text:field-content;type:dfn;spec:http
17
- url:https://tools.ietf.org/html/rfc7230#section-3.2;text:field-value;type:dfn;spec:http
18
- url:https://tools.ietf.org/html/rfc7230#section-3.1.2;text:reason-phrase;type:dfn;spec:http
19
- url:https://tools.ietf.org/html/rfc7234#section-1.2.1;text:delta-seconds;type:dfn;spec:http-caching
20
- url:https://tools.ietf.org/html/rfc8941#section-2;text:structured field value;type:dfn;spec:rfc8941
21
- url:https://tools.ietf.org/html/rfc8941#section-4.1;text:serializing structured fields;type:dfn;spec:rfc8941
22
- url:https://tools.ietf.org/html/rfc8941#section-4.2;text:parsing structured fields;type:dfn;spec:rfc8941
14
+ urlPrefix:https://datatracker.ietf.org/doc/html/rfc7230#;type:dfn;spec:http
15
+ url:section-3.1.1;text:method
16
+ url:section-3.2;text:field-name
17
+ url:section-3.2;text:field-content
18
+ url:section-3.2;text:field-value
19
+ url:section-3.1.2;text:reason-phrase
20
+
21
+ url:https://datatracker.ietf.org/doc/html/rfc7234#section-1.2.1;text:delta-seconds;type:dfn;spec:http-caching
22
+
23
+ urlPrefix:https://datatracker.ietf.org/doc/html/rfc8941#;type:dfn;spec:rfc8941
24
+ url:section-2;text:structured field value
25
+ url:section-4.1;text:serializing structured fields
26
+ url:section-4.2;text:parsing structured fields
27
+
28
+ url:https://w3c.github.io/resource-timing/#dfn-mark-resource-timing;text:mark resource timing;type:dfn;spec:resource-timing
29
+
30
+ urlPrefix:https://w3c.github.io/hr-time/#;spec:hr-time
31
+ type:dfn
32
+ url:dfn-coarsen-time;text:coarsen time
33
+ url:dfn-coarsened-shared-current-time;text:coarsened shared current time
34
+ url:dfn-unsafe-shared-current-time;text:unsafe shared current time
35
+ type:typedef;url:dom-domhighrestimestamp;text:DOMHighResTimeStamp
23
36
</pre>
24
37
25
38
<pre class=biblio>
@@ -74,7 +87,7 @@ url:https://tools.ietf.org/html/rfc8941#section-4.2;text:parsing structured fiel
74
87
},
75
88
"EXPECT-CT": {
76
89
"authors": ["Emily Stark"] ,
77
- "href": "https://tools .ietf.org/html/draft-ietf-httpbis-expect-ct-02 ",
90
+ "href": "https://datatracker .ietf.org/doc/ html/draft-ietf-httpbis-expect-ct",
78
91
"publisher": "IETF",
79
92
"title": "Expect-CT Extension for HTTP"
80
93
},
@@ -83,19 +96,19 @@ url:https://tools.ietf.org/html/rfc8941#section-4.2;text:parsing structured fiel
83
96
},
84
97
"HTTP3": {
85
98
"authors": ["M. Bishop, Ed."] ,
86
- "href": "https://tools .ietf.org/html/draft-ietf-quic-http",
99
+ "href": "https://datatracker .ietf.org/doc /html/draft-ietf-quic-http",
87
100
"publisher": "IETF",
88
101
"title": "Hypertext Transfer Protocol Version 3 (HTTP/3)"
89
102
},
90
103
"WEBTRANSPORT-HTTP3": {
91
104
"authors": ["V. Vasiliev"] ,
92
- "href": "https://tools .ietf.org/html/draft-ietf-webtrans-http3",
105
+ "href": "https://datatracker .ietf.org/doc /html/draft-ietf-webtrans-http3",
93
106
"publisher": "IETF",
94
107
"title": "WebTransport over HTTP/3"
95
108
},
96
109
"HTTP3-DATAGRAM": {
97
110
"authors": ["David Schinazi", "Lucas Pardue"] ,
98
- "href": "https://tools .ietf.org/html/draft-ietf-masque-h3-datagram",
111
+ "href": "https://datatracker .ietf.org/doc /html/draft-ietf-masque-h3-datagram",
99
112
"publisher": "IETF",
100
113
"title": "Using QUIC Datagrams with HTTP/3"
101
114
}
@@ -830,8 +843,8 @@ following is true:
830
843
<li><p><var> byte</var> is 0x22 ("), 0x28 (left parenthesis), 0x29 (right parenthesis), 0x3A (:),
831
844
0x3C (<), 0x3E (>), 0x3F (?), 0x40 (@), 0x5B ([), 0x5C (\), 0x5D (] ), 0x7B ({), 0x7D (}), or
832
845
0x7F DEL.
833
- <!-- Delimiters from https://tools .ietf.org/html/rfc7230#section-3.2.6 except for ,/;= and
834
- including DEL -->
846
+ <!-- Delimiters from https://datatracker .ietf.org/doc/ html/rfc7230#section-3.2.6 except for ,/;=
847
+ and including DEL -->
835
848
</ul>
836
849
837
850
<p> The <dfn noexport>CORS-unsafe request-header names</dfn> , given a <a for=/>header list</a>
@@ -2087,13 +2100,13 @@ is a <a>filtered response</a> whose
2087
2100
</ol>
2088
2101
2089
2102
<p> A <dfn id=concept-fresh-response>fresh response</dfn> is a <a for=/>response</a> whose
2090
- <a href=https://tools .ietf.org/html/rfc7234#section-4.2.3>current age</a> is within its
2091
- <a href=https://tools .ietf.org/html/rfc7234#section-4.2.1>freshness lifetime</a> .
2103
+ <a href=https://datatracker .ietf.org/doc /html/rfc7234#section-4.2.3>current age</a> is within its
2104
+ <a href=https://datatracker .ietf.org/doc /html/rfc7234#section-4.2.1>freshness lifetime</a> .
2092
2105
2093
2106
<p> A <dfn id=concept-stale-while-revalidate-response>stale-while-revalidate response</dfn> is a
2094
2107
<a for=/>response</a> that is not a <a>fresh response</a> and whose
2095
- <a href=https://tools .ietf.org/html/rfc7234#section-4.2.3>current age</a> is within the
2096
- <a href=https://tools .ietf.org/html/rfc5861#section-3>stale-while-revalidate lifetime</a> .
2108
+ <a href=https://datatracker .ietf.org/doc /html/rfc7234#section-4.2.3>current age</a> is within the
2109
+ <a href=https://datatracker .ietf.org/doc /html/rfc5861#section-3>stale-while-revalidate lifetime</a> .
2097
2110
2098
2111
<p> A <dfn export id=concept-stale-response>stale response</dfn> is a <a for=/>response</a> that is
2099
2112
not a <a>fresh response</a> or a <a>stale-while-revalidate response</a> .
@@ -3722,7 +3735,7 @@ steps:
3722
3735
<li><var> request</var> 's <a for=request>current URL</a>' s <a for=url>host</a> is a
3723
3736
<a for=/>domain</a>
3724
3737
<li> Matching <var> request</var> 's <a for=request>current URL</a>' s <a for=url>host</a> per
3725
- <a href=https://tools .ietf.org/html/rfc6797#section-8.2>Known HSTS Host Domain Name Matching</a>
3738
+ <a href=https://datatracker .ietf.org/doc /html/rfc6797#section-8.2>Known HSTS Host Domain Name Matching</a>
3726
3739
results in either a superdomain match with an asserted <code> includeSubDomains</code> directive
3727
3740
or a congruent match (with or without an asserted <code> includeSubDomains</code> directive).
3728
3741
[[!HSTS]]
@@ -4717,13 +4730,14 @@ steps. They return a <a for=/>response</a>.
4717
4730
<ol>
4718
4731
<li>
4719
4732
<p> If the user agent is not configured to block cookies for <var> httpRequest</var> (see
4720
- <a href=https://tools .ietf.org/html/rfc6265#section-7>section 7</a> of
4733
+ <a href=https://datatracker .ietf.org/doc /html/rfc6265#section-7>section 7</a> of
4721
4734
[[!COOKIES]] ), then:
4722
4735
4723
4736
<ol>
4724
4737
<li><p> Let <var> cookies</var> be the result of running the "cookie-string" algorithm (see
4725
- <a href=https://tools.ietf.org/html/rfc6265#section-5.4>section 5.4</a> of [[!COOKIES]] ) with
4726
- the user agent's cookie store and <var> httpRequest</var> 's <a for=request>current URL</a> .
4738
+ <a href=https://datatracker.ietf.org/doc/html/rfc6265#section-5.4>section 5.4</a> of
4739
+ [[!COOKIES]] ) with the user agent's cookie store and <var> httpRequest</var> 's
4740
+ <a for=request>current URL</a> .
4727
4741
4728
4742
<li> If <var> cookies</var> is not the empty string, append
4729
4743
`<code> Cookie</code> `/<var> cookies</var> to <var> httpRequest</var> 's
@@ -4778,7 +4792,7 @@ steps. They return a <a for=/>response</a>.
4778
4792
4779
4793
<p> Set <var> storedResponse</var> to the result of selecting a response from the
4780
4794
<var> httpCache</var> , possibly needing validation, as per the
4781
- "<a href=https://tools .ietf.org/html/rfc7234#section-4>Constructing Responses from Caches</a> "
4795
+ "<a href=https://datatracker .ietf.org/doc /html/rfc7234#section-4>Constructing Responses from Caches</a> "
4782
4796
chapter of <cite> HTTP Caching</cite> [[!HTTP-CACHING]] , if any.
4783
4797
4784
4798
<p class=note> As mandated by HTTP, this still takes the `<code> Vary</code> `
@@ -4846,7 +4860,7 @@ steps. They return a <a for=/>response</a>.
4846
4860
</ol>
4847
4861
4848
4862
<p class=note> See also the
4849
- "<a href=https://tools .ietf.org/html/rfc7234#section-4.3.4>Sending a Validation Request</a> "
4863
+ "<a href=https://datatracker .ietf.org/doc /html/rfc7234#section-4.3.4>Sending a Validation Request</a> "
4850
4864
chapter of <cite> HTTP Caching</cite> [[!HTTP-CACHING]] .
4851
4865
4852
4866
<li><p> Otherwise, set <var> response</var> to <var> storedResponse</var> and set
@@ -4879,10 +4893,10 @@ steps. They return a <a for=/>response</a>.
4879
4893
<var> httpFetchParams</var> , <var> includeCredentials</var> , and <var> isNewConnectionFetch</var> .
4880
4894
4881
4895
<li><p> If <var> httpRequest</var> 's <a for=request>method</a> is
4882
- <a href=https://tools .ietf.org/html/rfc7231#safe.methods >unsafe</a> and
4896
+ <a href=https://datatracker .ietf.org/doc/ html/rfc7231#section-4.2.1 >unsafe</a> and
4883
4897
<var> forwardResponse</var> 's <a for=response>status</a> is in the range 200 to 399, inclusive,
4884
4898
invalidate appropriate stored responses in <var> httpCache</var> , as per the
4885
- "<a href=https://tools .ietf.org/html/rfc7234#section-4.4>Invalidation</a> " chapter of
4899
+ "<a href=https://datatracker .ietf.org/doc /html/rfc7234#section-4.4>Invalidation</a> " chapter of
4886
4900
<cite> HTTP Caching</cite> , and set <var> storedResponse</var> to null. [[!HTTP-CACHING]]
4887
4901
4888
4902
<li>
@@ -4893,7 +4907,7 @@ steps. They return a <a for=/>response</a>.
4893
4907
<li>
4894
4908
<p> Update <var> storedResponse</var> 's <a for=response>header list</a> using
4895
4909
<var> forwardResponse</var> 's <a for=response>header list</a> , as per the
4896
- "<a href=https://tools .ietf.org/html/rfc7234#section-4.3.4>Freshening Stored Responses upon Validation</a> "
4910
+ "<a href=https://datatracker .ietf.org/doc /html/rfc7234#section-4.3.4>Freshening Stored Responses upon Validation</a> "
4897
4911
chapter of <cite> HTTP Caching</cite> . [[!HTTP-CACHING]]
4898
4912
4899
4913
<p class="note"> This updates the stored response in cache as well.
@@ -4914,7 +4928,7 @@ steps. They return a <a for=/>response</a>.
4914
4928
4915
4929
<li>
4916
4930
<p> Store <var> httpRequest</var> and <var> forwardResponse</var> in <var> httpCache</var> , as per
4917
- the "<a href=https://tools .ietf.org/html/rfc7234#section-3>Storing Responses in Caches</a> "
4931
+ the "<a href=https://datatracker .ietf.org/doc /html/rfc7234#section-3>Storing Responses in Caches</a> "
4918
4932
chapter of <cite> HTTP Caching</cite> . [[!HTTP-CACHING]]
4919
4933
4920
4934
<p class=note> If <var> forwardResponse</var> is a <a>network error</a> , this effectively caches
@@ -5287,12 +5301,12 @@ optional boolean <var>forceNewConnection</var> (default false), run these steps:
5287
5301
<li>
5288
5302
<p> If <var> includeCredentials</var> is true and the user agent is not configured to block
5289
5303
cookies for <var> request</var> (see
5290
- <a href=https://tools .ietf.org/html/rfc6265#section-7>section 7</a> of [[!COOKIES]] ), then run
5291
- the "set-cookie-string" parsing algorithm (see
5292
- <a href=https://tools .ietf.org/html/rfc6265#section-5.2>section 5.2</a> of [[!COOKIES]] ) on the
5293
- <a for=header>value</a> of each <var> header</var> whose <a for=header>name</a> is a
5294
- <a> byte-case-insensitive</a> match for `<code> Set-Cookie</code> ` in <var> response </var> 's
5295
- <a for=response>header list</a> , if any, and <var> request</var> 's
5304
+ <a href=https://datatracker .ietf.org/doc/ html/rfc6265#section-7>section 7</a> of [[!COOKIES]] ),
5305
+ then run the "set-cookie-string" parsing algorithm (see
5306
+ <a href=https://datatracker .ietf.org/doc/ html/rfc6265#section-5.2>section 5.2</a> of
5307
+ [[!COOKIES]] ) on the <a for=header>value</a> of each <var> header</var> whose
5308
+ <a for=header>name</a> is a <a> byte-case-insensitive</a> match for `<code> Set-Cookie</code> ` in
5309
+ <var> response </var> 's < a for=response>header list</a>, if any, and <var>request</var>' s
5296
5310
<a for=request>current URL</a> .
5297
5311
5298
5312
<p class=note> This is a fingerprinting vector.
@@ -7443,9 +7457,8 @@ fetch("https://www.example.com/")
7443
7457
"<code> http</code> ", and true otherwise.
7444
7458
7445
7459
<li><p> Follow the requirements stated in step 2 to 5, inclusive, of the first set of steps in
7446
- <a href=http://tools.ietf.org/html/rfc6455#section-4.1>section 4.1</a> of The WebSocket Protocol
7447
- to establish a <a lt="obtain a WebSocket connection">WebSocket connection</a> .
7448
- [[!WSP]]
7460
+ <a href=https://datatracker.ietf.org/doc/html/rfc6455#section-4.1>section 4.1</a> of The WebSocket
7461
+ Protocol to establish a <a lt="obtain a WebSocket connection">WebSocket connection</a> . [[!WSP]]
7449
7462
7450
7463
<li><p> If that established a connection, return it, and return failure otherwise.
7451
7464
</ol>
@@ -7543,9 +7556,9 @@ therefore not shareable, a WebSocket connection is very close to identical to an
7543
7556
by the client, but not acknowledged by the server.
7544
7557
7545
7558
<li><p> Follow the requirements stated step 2 to step 6, inclusive, of the last set of steps in
7546
- <a href=http ://tools .ietf.org/html/rfc6455#section-4.1>section 4.1</a> of The WebSocket Protocol
7547
- to validate <var> response</var> . This either results in <a>fail the WebSocket connection</a>
7548
- or <a>the WebSocket connection is established</a> .
7559
+ <a href=https ://datatracker .ietf.org/doc/ html/rfc6455#section-4.1>section 4.1</a> of The
7560
+ WebSocket Protocol to validate <var> response</var> . This either results in
7561
+ <a>fail the WebSocket connection</a> or <a>the WebSocket connection is established</a> .
7549
7562
</ol>
7550
7563
</ol>
7551
7564
0 commit comments