File: request.idl

package info (click to toggle)
chromium 139.0.7258.127-1~deb13u1
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 6,122,096 kB
  • sloc: cpp: 35,100,771; ansic: 7,163,530; javascript: 4,103,002; python: 1,436,920; asm: 946,517; xml: 746,709; pascal: 187,653; perl: 88,691; sh: 88,436; objc: 79,953; sql: 51,488; cs: 44,583; fortran: 24,137; makefile: 22,147; tcl: 15,277; php: 13,980; yacc: 8,984; ruby: 7,485; awk: 3,720; lisp: 3,096; lex: 1,327; ada: 727; jsp: 228; sed: 36
file content (81 lines) | stat: -rw-r--r-- 3,109 bytes parent folder | download | duplicates (6)
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// https://fetch.spec.whatwg.org/#request-class

typedef (Request or USVString) RequestInfo;

enum RequestDestination {
    // https://fetch.spec.whatwg.org/#requestdestination
    "", "audio", "audioworklet", "document", "embed", "font", "frame", "iframe", "image", "json", "manifest", "object", "paintworklet", "report",
    "script", "serviceworker", "sharedworker", "style",  "track", "video", "worker", "xslt",

    // https://wicg.github.io/fenced-frame/#new-request-destination
    "fencedframe",

    // https://github.com/WICG/compression-dictionary-transport
    "dictionary",

    // https://wicg.github.io/nav-speculation/speculation-rules.html#fetch-destination
    "speculationrules",

    // https://wicg.github.io/shared-storage/#request-destination-monkey-patch
    "sharedstorageworklet",

    // https://w3c-fedid.github.io/FedCM/
    "webidentity",

    // https://github.com/whatwg/fetch/issues/1120
    "webbundle",
};
enum RequestMode { "navigate", "same-origin", "no-cors", "cors" };
enum RequestCredentials { "omit", "same-origin", "include" };
enum RequestRedirect { "follow", "error", "manual" };
enum RequestCache { "default", "no-store", "reload", "no-cache", "force-cache",
                    "only-if-cached" };
enum FetchPriority {"low", "auto", "high"};
enum RequestDuplex {"half"};
enum IPAddressSpace {"loopback", "local", "private", "public", "unknown"};

// https://w3c.github.io/webappsec-referrer-policy/#referrer-policies

enum ReferrerPolicy {
    "",
    "no-referrer",
    "no-referrer-when-downgrade",
    "same-origin",
    "origin",
    "strict-origin",
    "origin-when-cross-origin",
    "strict-origin-when-cross-origin",
    "unsafe-url"
};

[
    Exposed=(Window,Worker)
] interface Request {
    [CallWith=ScriptState, RaisesException] constructor(RequestInfo input, optional RequestInit init = {});
    readonly attribute ByteString method;
    readonly attribute USVString url;
    [ImplementedAs=getHeaders, SameObject] readonly attribute Headers headers;
    readonly attribute RequestDestination destination;
    readonly attribute DOMString referrer;
    [ImplementedAs=getReferrerPolicy] readonly attribute ReferrerPolicy referrerPolicy;
    readonly attribute RequestMode mode;
    readonly attribute RequestCredentials credentials;
    readonly attribute RequestCache cache;
    readonly attribute RequestRedirect redirect;
    readonly attribute DOMString integrity;
    readonly attribute boolean keepalive;
    readonly attribute AbortSignal signal;
    readonly attribute RequestDuplex duplex;
    [RuntimeEnabled=LocalNetworkAccessPermissionPolicy] readonly attribute IPAddressSpace targetAddressSpace;

    [MeasureAs=RequestIsHistoryNavigation] readonly attribute boolean isHistoryNavigation;
    [RaisesException, CallWith=ScriptState, NewObject] Request clone();

    [Affects=Everything, RuntimeEnabled=FetchUploadStreaming] readonly attribute ReadableStream? body;
};

Request includes Body;