Bug 239624

Summary: Fire <link rel=preload> error events if and only if network errors
Product: WebKit Reporter: Hiroshige Hayashizaki <hiroshige>
Component: Page LoadingAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Minor CC: achristensen, beidson, koivisto, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: All   
OS: All   

Description Hiroshige Hayashizaki 2022-04-21 15:30:59 PDT
According to the discussion on https://github.com/whatwg/html/issues/1142
(draft Spec PR https://github.com/whatwg/html/pull/7799),
error events on <link rel=preload> should be fired only for network errors.

WPT: https://github.com/web-platform-tests/wpt/pull/33382

On Safari,

load events should be fired for responses that are not network errors (actual behavior: error events):

- <link rel=preload as=style/script> + HTTP 404 (all browsers)
- <link rel=preload as=image> + broken images (all browsers)

error events should be fired for network errors (actual behavior: load events):

- `<link rel=preload as=script>` + MIME type listed in https://fetch.spec.whatwg.org/#should-response-to-request-be-blocked-due-to-mime-type?, without nosniff (Safari/Chrome)

Note: the events described above are on <link rel=preload>, which can be different from events fired on main requests e.g. <img>.
Comment 1 Radar WebKit Bug Importer 2022-04-28 15:31:13 PDT
<rdar://problem/92491283>