-
Notifications
You must be signed in to change notification settings - Fork 4
/
131.txt
67 lines (53 loc) · 2.61 KB
/
131.txt
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
* 仕様書
[REFS[
- [4] [CITE@en-GB-x-hixie[HTML Standard]] ([TIME[2016-02-14 16:33:19 +09:00]] 版) <https://html.spec.whatwg.org/#fetch-a-classic-worker-script>
]REFS]
* 古典ワーカースクリプト
[6] [DFN[[RUBYB[古典ワーカースクリプトのfetch]@en[fetch a classic worker script]]]]
[SRC[>>4]] は、次の[[引数]]を受け取ります。
[FIG(list members middle)[
: [VAR[URL]] : [[URL]]。
: [VAR[リファラー]] : [[URL]]。
: [VAR[設定群オブジェクト]] : [[環境設定群オブジェクト]]。
: [VAR[共有である]] : [[boolean]]。
: [VAR[続きの処理]] : 処理。
]FIG]
[7] 次のようにします。
[FIG(steps)[
= [54] 新しい[[要求]]を [[fetch]] します。
[FIG(list members)[
[FIGCAPTION[
[[要求]]
]FIGCAPTION]
:[F[[[URL]]]]: [VAR[URL]]
:[F[[[クライアント]]]]: [VAR[設定群オブジェクト]]
:[F[[[型]]]]: [CODE[[[script]]]]
:[F[[[終点]]]]: [VAR[共有である]]なら [CODE(DOMi)@en[[[sharedworker]]]]、
そうでないなら [CODE[[[worker]]]]
:[F[[[リファラー]]]]: [VAR[リファラー]]
:[F[[[同期フラグ]]]]: 設定する
:[F[[[モード]]]]: [CODE[[[same-origin]]]]
:[F[[[credentialsモード]]]]: [CODE[[[same-origin]]]]
:[F[[[URL credentials利用フラグ]]]]: 設定する
]FIG]
[[process response]] は、 >>56 とします。
]FIG]
[56] [[process response]] は、[VAR[応答]]を次のように処理します。
[FIG(steps)[
= [5] [VAR[応答]]の[F[[[型]]]]が [CODE[[[error]]]] であるか、
[VAR[応答]]の[F[[[状態]]]]が[[OK状態]]''以外''なら、
== [8] [VAR[スクリプト]]を、 null に設定します。
= [9] それ以外なら、
== [63] [VAR[スクリプト]]を、 [VAR[応答]]の[F[[[本体]]]]を [[UTF-8復号]]した結果と[VAR[設定群オブジェクト]]について[[古典スクリプトを作成]]した結果に設定します。
= [10] [VAR[スクリプト]]について[VAR[続きの処理]]を実行します。
]FIG]
* 歴史
** ワーカー
[1] [[ワーカー]]に関する処理は、[[ワーカー]]導入時に [[run a worker]] 処理の一部として規定されました。
;; [[run a worker]] を参照。
** モジュール
[3] [[モジュール]]の導入により、[[古典スクリプト]]を使った[[ワーカー]]の [[fetch]]
部分の処理は [[run a worker]] から単独の[[手続き]]に ([[仕様書]]上) 分離されました。
[REFS[
- [2] [CITE@en[Add module workers · whatwg/html@e3a5bb7]] ([TIME[2016-02-16 00:03:29 +09:00]] 版) <https://github.com/whatwg/html/commit/e3a5bb757f64374c37d8c4528c01298463ef0b2a>
]REFS]