Bug 194897 - navigator.sendBeacon does not work on visibilitychange callback for document unload
Summary: navigator.sendBeacon does not work on visibilitychange callback for document ...
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: Safari Technology Preview
Hardware: Macintosh macOS 10.14
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2019-02-21 06:22 PST by Bastien Caudan
Modified: 2019-06-22 12:56 PDT (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Bastien Caudan 2019-02-21 06:22:40 PST
With the example from the beacon spec (https://w3c.github.io/beacon/):

document.addEventListener('visibilitychange', function() {
  if (document.visibilityState === 'hidden') {
    navigator.sendBeacon('/collector', data);
  }
});


From manual tests on hidden cases, navigator.sendBeacon is triggered correctly when:
- the browser is minimized.
- the document is not the active tab

But navigator.sendBeacon is not triggered when:
- the browser unload the document

Other browsers that support the Beacon API allow these requests to be sent.
Comment 1 Radar WebKit Bug Importer 2019-02-21 20:49:37 PST
<rdar://problem/48301429>
Comment 2 Daniel 2019-06-21 14:08:29 PDT
The visibilitychange event don’t fire at all during unload. This is a duplicate of issue #116769.