Contact emails

[email protected], [email protected], [email protected]

Explainer

https://github.com/darrenw/docs/blob/main/explainers/beacon_api.md

Specification

https://clelland.github.io/page-unload-beacon/spec.html (In draft state)

Summary

A stateful API for beacons that has the browser control the time beacons
are sent.

Existing beacon APIs are all based around a developer constructing and
sending a beacon, and there's no good time for that "send" call to be made.
(Handlers such as 'unload' are often ignored, for example.) This API
delegates the sending to the browser itself, so it can support beacons on
page unload or on page hide, without the developer having to implement send
calls at exactly the right times.


Blink component

Blink>Network
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ENetwork>

TAG review

None yet.

TAG review status

N/A

Risks

Interoperability and Compatibility

Gecko: No signal

WebKit: No signal

Web developers: No signals

Other signals:

WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that
it has potentially high risk for Android WebView-based applications?


Goals for experimentation

The intent is for experiments to learn that developers can easily adopt the
API shapes to achieve current use cases in addition to getting feedback
from them. The experiment also aims to test the stability and reliability
of the API.

Ongoing technical constraints

In M104, the API described in the explainer is not yet fully developed,
such that the API

   -

   Supports only the GET method. Setting it to POST will fall back to GET.
   -

   Does not support request payload, i.e. it does not send out data set by
   setData(data).
   -

   Does not support pageHideTimeout.
   -

   Does not recover from browser crashes, forced closures, network failure,
   etc.


Debuggability

There are no particular debugging APIs made available or Chrome DevTools
integrations for this OT. We plan to build an integration with Chrome
DevTools to provide a better developer experience. This OT will allow us to
get feedback that helps us build the right design.

Will this feature be supported on all six Blink platforms (Windows, Mac,
Linux, Chrome OS, Android, and Android WebView)?

Yes

Is this feature fully tested by web-platform-tests
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
?

No, basic tests are present and we will be adding more as we complete more
of the implementation.

Flag name

PendingBeaconAPI

Requires code in //chrome?

False

Tracking bug

https://bugs.chromium.org/p/chromium/issues/detail?id=1293679

Launch bug

https://bugs.chromium.org/p/chromium/issues/detail?id=1323615

Estimated milestones

M104 for off-by-default experiment


Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5690553554436096

Links to previous Intent discussions

Intent to prototype:
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAG%2BRaU7yMQ%2BRkeSpXhgbfCSGb4BvpW-exTUFZzb_eMFRE%2B_syQ%40mail.gmail.com
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/cag+rau7ymq+rkespxhgbfcsgb4bvpw-extufzzb_emfre+_...@mail.gmail.com>


This intent message was generated by Chrome Platform Status
<https://chromestatus.com/>.

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAH3JASV7pR%3D3poOA0x2sQgVLOobtjCyfxLE3kYsnasfBVSyOEg%40mail.gmail.com.

Reply via email to