A user account is required in order to edit this wiki, but we've had to disable public user registrations due to spam.

To request an account, ask an autoconfirmed user on Chat (such as one of these permanent autoconfirmed members).

URL schemes: Difference between revisions

From WHATWG Wiki
Jump to navigation Jump to search
(→‎about: URLs: Add html-kind)
 
(14 intermediate revisions by 4 users not shown)
Line 1: Line 1:
Licensing: this page is under CC0, not the MIT License.
{{CC0 page}}


== about: URLs ==
== about: URLs ==
Line 15: Line 15:
|  
|  
|-
|-
| "invalid"
| [https://drafts.csswg.org/css-values-3/#about-invalid "invalid"]
| -
| -
| Used to represent a network error. See also [http://dev.w3.org/csswg/css3-values/ CSS Values and Units].
| Used by CSS's url() function as a default value
|-
|-
| "legacy-compat"
| [https://html.spec.whatwg.org/#about:html-kind "html-kind"]
| -
| Used as an identifier for kinds of media tracks for HTML <audio> and <video> elements.
|-
| [https://html.spec.whatwg.org/#about:legacy-compat "legacy-compat"]
| -
| -
| Used in HTML for XSLT serializers.
| Used in HTML for XSLT serializers.
|-
|-
| "srcdoc"
| [https://html.spec.whatwg.org/#about:srcdoc "srcdoc"]
| -
| -
| Used in HTML for its <iframe srcdoc> feature.
| Used in HTML for its <iframe srcdoc> feature.
|-
| "unicorn"
| A resource whose Content-Type is image/svg+xml and entity body is the contents of [http://html5.org/temp/unicorn.svg unicorn.svg].
| Unicorn!
|}
|}


To '''obtain a resource''' from an about: URL, run these steps:
about: URLs are handled as [https://fetch.spec.whatwg.org/#scheme-fetch part of the Fetch Standard]; all but about:blank cause a network error. Cases like about:config can also make it to the fallback paths of HTML's [https://html.spec.whatwg.org/#navigate navigate] algorithm.
 
See also [http://tools.ietf.org/html/rfc6694 The "about" URI Scheme] and [http://www.iana.org/assignments/about-uri-tokens/about-uri-tokens.xml "about" URI Tokens] which this wiki page obsoletes.


* If URL's scheme data is not the literal string "about" or "invalid", return a network error. (URL's query is simply not taken into account and can be anything.)
=== Examples ===
* Return the resource corresponding to the identifier as listed in the table above, with HTTP status code 200 and HTTP status text "OK".


See also [http://tools.ietf.org/html/rfc6694 The "about" URI Scheme] and [http://www.iana.org/assignments/about-uri-tokens/about-uri-tokens.xml "about" URI Tokens] which this wiki page obsoletes.
{| class="wikitable"
|-
! Input
! Result
|-
| about:blanK
| network error (uppercase K)
|-
| about:bl%61nk
| network error (no percent decoding by either the URL parser or the obtain a resource algorithm)
|-
| about:blank?teehee
| works (query does not matter)
|-
| about:blank?teehee#hihi
| works (fragment does not matter either)
|}


== javascript: URLs ==
== data: URLs ==


'''javascript: URLs''' represent a JavaScript script.
See [https://fetch.spec.whatwg.org/#data-url-processor the Fetch Standard]


To '''obtain a script''' from a javascript: URL, run these steps:
== javascript: URLs ==


* Let ''input'' be the concatenation of URL's scheme data, followed by "?" and URL's query if URL's query is non-null, followed by "#" and URL's fragment if URL's fragment is non-null.
'''javascript: URLs''' represent a JavaScript script. They are handled by the HTML Standard's [https://html.spec.whatwg.org/#javascript-protocol navigate algorithm].
* Set ''input'' to the result of [http://url.spec.whatwg.org/#percent-decode percent decoding] ''input''.
* If ''input'' starts with a U+FEFF, remove a single occurrence from the start of ''input''.
* Return ''input''.


See also [http://tools.ietf.org/html/draft-hoehrmann-javascript-scheme The 'javascript' resource identifier scheme] which this wiki page obsoletes.
See also [http://tools.ietf.org/html/draft-hoehrmann-javascript-scheme The 'javascript' resource identifier scheme] which the HTML Standard obsoletes.


== Others ==
== Others ==

Latest revision as of 19:31, 11 August 2020

The contents of this page, URL schemes, and all edits made to this page in its history, are hereby released under the CC0 Public Domain Dedication, as described in WHATWG Wiki:Copyrights.

about: URLs

about: URLs serve as identifier, potentially with an associated resource. The identifier is given in the URL's scheme data.

Identifier Resource Notes
"blank" A resource whose Content-Type is text/html;charset=utf-8 and entity body is the empty string.
"invalid" - Used by CSS's url() function as a default value
"html-kind" - Used as an identifier for kinds of media tracks for HTML <audio> and <video> elements.
"legacy-compat" - Used in HTML for XSLT serializers.
"srcdoc" - Used in HTML for its <iframe srcdoc> feature.

about: URLs are handled as part of the Fetch Standard; all but about:blank cause a network error. Cases like about:config can also make it to the fallback paths of HTML's navigate algorithm.

See also The "about" URI Scheme and "about" URI Tokens which this wiki page obsoletes.

Examples

Input Result
about:blanK network error (uppercase K)
about:bl%61nk network error (no percent decoding by either the URL parser or the obtain a resource algorithm)
about:blank?teehee works (query does not matter)
about:blank?teehee#hihi works (fragment does not matter either)

data: URLs

See the Fetch Standard

javascript: URLs

javascript: URLs represent a JavaScript script. They are handled by the HTML Standard's navigate algorithm.

See also The 'javascript' resource identifier scheme which the HTML Standard obsoletes.

Others