boomerang measures various performance characteristics of your user's browsing experience and beacons it back to your server.
To use this you'll need a web site, lots of users and the ability to do something with the data you collect. How you collect the data is up to you, but we have a few ideas.
Everything in boomerang is accessed through the BOOMR object, which is
available on window.BOOMR. It contains the public API, utility functions
(BOOMR.utils) and all of the plugins (BOOMR.plugins).
Each plugin has its own API, but is reachable through BOOMR.plugins.
Beacon Parameters
The core boomerang object will add the following parameters to the beacon.
Note that each individual plugin will add its own
parameters as well.
v: Boomerang versionsv: Boomerang Loader Snippet versionsm: Boomerang Loader Snippet methodu: The page's URL (for most beacons), or theXMLHttpRequestURLn: The beacon numberpgu: The page's URL (forXMLHttpRequestbeacons)pid: Page ID (8 characters)r: Navigation referrer (fromdocument.location)vis.pre:1if the page transitioned from prerender to visiblevis.st: Document's visibility state when beacon was sentvis.lh: Timestamp when page was last hiddenvis.lv: Timestamp when page was last visiblexhr.pg: TheXMLHttpRequestpage grouperrors: Error messages of errors detected in Boomerang code, separated by a newlinert.si: Session IDrt.ss: Session start timestamprt.sl: Session length (number of pages), can be increased by XHR beacons as wellua.plt:navigator.platformor if availablenavigator.userAgentData.platformua.arch: navigator userAgentData architecture, if client hints requestedua.model: navigator userAgentData model, if client hints requestedua.pltv: navigator userAgentData platform version, if client hints requestedua.vnd:navigator.vendor
Classes
Members
-
boomerang_frame :Window
-
The Boomerang frame:
- If Boomerang was loaded in an IFRAME, this is the IFRAME
- If Boomerang was loaded inline, this is the current window
Type:
- Window
-
boomr.t_lstart :TimeStamp
-
Time the loader script started fetching boomerang.js (if using the asynchronous loader snippet) (
BOOMR_lstart)Type:
-
boomr.t_onload :TimeStamp
-
Time the
window.onloadevent fired (if using the asynchronous loader snippet).This timestamp is logged in the case boomerang.js loads after the onload event for browsers that don't support NavigationTiming.
Type:
-
config_url :string
-
(Optional) URL of configuration file
Type:
- string
-
lastVisibilityEvent :object
-
An mapping of visibliity event states to the latest time they happened
Type:
- object
-
loadedLate :boolean
-
Whether or not Boomerang was loaded after the
onloadevent.Type:
- boolean
-
t_end :TimeStamp
-
When the Boomerang plugins have all run.
This value is generally set in zzz-last-plugin.js.
Type:
-
t_start :TimeStamp
-
The timestamp when boomerang.js showed up on the page.
This is the value of
BOOMR_startwe set earlier.Type:
-
url :string
-
URL of boomerang.js.
Type:
- string
-
version :string
-
Boomerang version, formatted as major.minor.patchlevel.
This variable is replaced during build (
grunt build).Type:
- string
-
window :Window
-
The main document window.
- If Boomerang was loaded in an IFRAME, this is the parent window
- If Boomerang was loaded inline, this is the current window
Type:
- Window
-
xhr_excludes
-
URLs to exclude from automatic
XMLHttpRequestinstrumentation.You can put any of the following in it:
- A full URL
- A hostname
- A path
Example
BOOMR = window.BOOMR || {}; BOOMR.xhr_excludes = { "mysite.com": true, "/dashboard/": true, "https://mysite.com/dashboard/": true };
Methods
-
addError(err [, src] [, extra])
-
Logs an internal Boomerang error.
If the
BOOMR.plugins.Errorsplugin is enabled, this data will be compressed on theerrbeacon parameter. If not, it will be included in uncompressed form on theerrorsparameter.Parameters:
Name Type Argument Description errstring | object Error
srcstring <optional>
Source
extraobject <optional>
Extra data
-
addVar(name [, val] [, singleBeacon])
-
Add one or more parameters to the beacon.
This method may either be called with a single object containing key/value pairs, or with two parameters, the first is the variable name and the second is its value.
All names should be strings usable in a URL's query string.
We recommend only using alphanumeric characters and underscores, but you can use anything you like.
Values should be strings (or numbers), and have the same restrictions as names.
Parameters will be on all subsequent beacons unless
singleBeaconis set. Early beacons will not clear vars that were set withsingleBeacon.Parameters:
Name Type Argument Default Description namestring | object Variable name
valstring | object <optional>
Value. If the first parameter is an object, this becomes the singleBeacon parameter.
singleBeaconboolean <optional>
false Whether or not to add to a single beacon or all beacons.
Returns:
Type: BOOMR
Boomerang object
Example
BOOMR.addVar("page_id", 123); BOOMR.addVar({"page_id": 123, "user_id": "Person1"}); -
appendVar(name, val)
-
Appends data to a beacon.
If the value already exists, a comma is added and the new data is applied.
Parameters:
Name Type Description namestring Variable name
valstring Value
Returns:
Type: BOOMR
Boomerang object
-
attach_page_ready(cb)
-
Attach a callback to the
pageshoworonloadevent ifonloadhas not been fired otherwise queue it to run immediatelyParameters:
Name Type Description cbfunction Callback to run when
onloadfires or page is visible (pageshow) -
debug(m [, s])
-
Logs debug messages to the console
Debug messages are stripped out of production builds.
Parameters:
Name Type Argument Description mstring Message
sstring <optional>
Source
-
disable()
-
Disables boomerang from doing anything further:
- Clears event handlers (such as onload)
- Clears all event listeners
-
error(m [, s])
-
Logs error messages to the console
Parameters:
Name Type Argument Description mstring Message
sstring <optional>
Source
-
fireEvent(e_name, data)
-
Fires a Boomerang event
Parameters:
Name Type Description e_namestring Event name
dataobject Event payload
Returns:
Type: BOOMR
Boomerang object
-
forceSameSiteCookieNone()
-
Allows us to force SameSite=None from a Boomerang plugin or a third party code.
When this function is called then Boomerang won't honor "same_site_cookie" configuration key and won't attempt to return the default value of SameSite=Lax .
-
getPerformance()
-
Gets the
window.performanceobject of the root window.Checks vendor prefixes for older browsers (e.g. IE9).
Returns:
Type: Performance | undefined
window.performanceif it exists -
getResourceTiming(url [, sort] [, filter])
-
Gets the latest ResourceTiming entry for the specified URL.
Default sort order is chronological startTime.
Parameters:
Name Type Argument Description urlstring Resource URL
sortfunction <optional>
Sort the entries before returning the last one
filterfunction <optional>
Filter the entries. Will be applied before sorting
Returns:
Type: PerformanceEntry | undefined
Entry, or undefined if ResourceTiming is not supported or if the entry doesn't exist
-
getUriEncodedVar(name, value)
-
Gets a URI-encoded name/value pair.
Parameters:
Name Type Description namestring Name
valuestring Value
Returns:
Type: string
URI-encoded string
-
getVar(name)
-
Gets the specified variable.
Parameters:
Name Type Description namestring Variable name
Returns:
Type: object | undefined
Variable, or undefined if it isn't set
-
getVarsOfPriority(vars, pri)
-
Gets all variables of the specified priority
Parameters:
Name Type Description varsobject Variables (will be modified for pri -1 and 1)
prinumber Priority (-1, 0, or 1)
Returns:
Type: Array.<string>
Array of URI-encoded vars
-
hasSentPageLoadBeacon()
-
Determines whether or not a Page Load beacon has been sent.
Returns:
Type: boolean
True if a Page Load beacon has been sent.
-
hasVar(name)
-
Determines whether or not the beacon has the specified variable.
Parameters:
Name Type Description namestring Variable name
Returns:
Type: boolean
True if the variable is set.
-
info(m [, s])
-
Logs info messages to the console
Parameters:
Name Type Argument Description mstring Message
sstring <optional>
Source
-
init(config [,
]) -
Initializes Boomerang by applying the specified configuration.
All plugins'
init()functions will be called with the same config as well.Parameters:
Name Type Argument Description configobject Configuration object
Properties
Name Type Argument Description autorunboolean <optional>
By default, boomerang runs automatically and attaches its
page_readyhandler to thewindow.onloadevent. If you setautoruntofalse, this will not happen and you will need to callBOOMR.page_readyyourself.beacon_auth_keystring Beacon authorization key value
beacon_auth_tokenstring Beacon authorization token.
beacon_with_credentialsboolean Sends beacon with credentials
beacon_disable_sendbeaconboolean Disables
navigator.sendBeacon()supportbeacon_urlstring The URL to beacon results back to. If not set, no beacon will be sent.
beacon_url_force_httpsboolean Forces protocol-relative Beacon URLs to HTTPS
beacon_typestring GET,POSTorAUTOsite_domainstring <optional>
The domain that all cookies should be set on Boomerang will try to auto-detect this, but unless your site is of the
foo.comformat, it will probably get it wrong. It's a good idea to set this to whatever part of your domain you'd like to share bandwidth and performance measurements across. Set this to a falsy value to disable all cookies.strip_query_stringboolean <optional>
Whether or not to strip query strings from all URLs (e.g.
u,pgu, etc.)user_ipstring <optional>
Despite its name, this is really a free-form string used to uniquely identify the user's current internet connection. It's used primarily by the bandwidth test to determine whether it should re-measure the user's bandwidth or just use the value stored in the cookie. You may use IPv4, IPv6 or anything else that you think can be used to identify the user's network connection.
same_site_cookiestring <optional>
Used for creating cookies with
SameSitewith one of the following values:None,LaxorStrict.secure_cookieboolean <optional>
When
trueall cookies will be created withSecureflag.request_client_hintsboolean <optional>
When
true, gather high entropy values for Architecture, Model and Platform data from navigator.userAgentData.no_unloadboolean <optional>
Disables all unload handlers and the Unload beacons
logfunction <optional>
Logger to use. Set to
nullto disable logging.function <optional>
Each plugin has its own section
Returns:
Type: BOOMR
Boomerang object
-
instrumentFetch()
-
Instrument all requests made via fetch to send beacons.
This is implemented in
plugins/auto-xhr.jsBOOMR.plugins.AutoXHR. -
instrumentXHR()
-
Instrument all requests made via XMLHttpRequest to send beacons.
This is implemented in
plugins/auto-xhr.jsBOOMR.plugins.AutoXHR. -
isCrossOriginError(err)
-
Determines if the specified Error is a Cross-Origin error.
Parameters:
Name Type Description errstring | object Error
Returns:
Type: boolean
True if the Error is a Cross-Origin error.
-
log(m, l [, s])
-
Logs the message to the console
Parameters:
Name Type Argument Description mstring Message
lstring Log level
sstring <optional>
Source
-
now()
-
Gets the current time in milliseconds since the Unix Epoch (Jan 1 1970).
In browsers that support
DOMHighResTimeStamp, this will be replaced by a function that addsperformance.now()tonavigationStart(with milliseconds.microseconds resolution).Returns:
Type: TimeStamp
Milliseconds since Unix Epoch
-
onloadFired()
-
Determines whether or not the page's
onloadevent has fired, or ifautorunis false, whetherBOOMR.page_readywas called.Returns:
Type: boolean
True if
onloadorBOOMR.page_readywere called -
page_ready( [ev], auto)
-
Method that fires the
BOOMR#event:page_readyevent. Call this only if you've setautoruntofalsewhen calling theBOOMR.initmethod. You should call this method when you determine that your page is ready to be used by your user. This will be the end-time used in the page load time measurement. Optionally, you can pass a Unix Epoch timestamp as a parameter or set the globalBOOMR_page_readyvar that will be used as the end-time instead.Parameters:
Name Type Argument Description evEvent | number <optional>
Ready event or optional load event end timestamp if called manually
autoboolean True if called by
page_ready_autorunReturns:
Type: BOOMR
Boomerang object
Example
BOOMR.init({ autorun: false, ... }); // wait until the page is ready, i.e. your view has loaded BOOMR.page_ready(); -
page_ready_autorun(ev)
-
Sends the
page_readyevent only ifautorunis still true afterBOOMR.initis called.Parameters:
Name Type Description evEvent Event
-
readyToSend()
-
Determines if Boomerang can send a beacon.
Queryies all plugins to see if they implement
readyToSend(), and if so, that they returntrue.If not, the beacon cannot be sent.
Returns:
Type: boolean
True if Boomerang can send a beacon
-
real_sendBeacon()
-
Sends all beacon data.
This function should be called directly any time a "new" beacon is about to be constructed. For example, if you're creating a new XHR or other custom beacon, you should ensure the existing beacon data is flushed by calling
BOOMR.real_sendBeacon();first. -
registerEvent(e_name)
-
Registers a Boomerang event.
Parameters:
Name Type Description e_namestring Event name
Returns:
Type: BOOMR
Boomerang object
-
removeVar(name)
-
Removes one or more variables from the beacon URL. This is useful within a plugin to reset the values of parameters that it is about to set.
Plugins can also use this in the
BOOMR#event:beaconevent to clear any variables that should only live on a single beacon.This method accepts either a list of variable names, or a single array containing a list of variable names.
Parameters:
Name Type Description nameArray.<string> | string Variable name or list
Returns:
Type: BOOMR
Boomerang object
-
requestStart(name)
-
Starts a timer for a dynamic request.
Once the named request has completed, call
loaded()to send a beacon with the duration.Parameters:
Name Type Description namestring Timer name
Returns:
Type: object
An object with a
.loaded()function that you can call when the dynamic timer is complete.Example
var timer = BOOMR.requestStart("my-timer"); // do stuff timer.loaded(); -
responseEnd(name, t_start, data, t_end)
-
Sends a beacon for a dynamic request.
Parameters:
Name Type Description namestring | object Timer name or timer object data.
Properties
Name Type Argument Description initiatorstring <optional>
Initiator, such as
xhrorspaurlstring <optional>
URL of the request
t_startTimeStamp Start time
dataobject Request data
t_endTimeStamp End time
-
sendAll(data)
-
Sends a set of Custom Metrics and Timers immediately
Parameters:
Name Type Description dataobject An object containing a map of Custom Metrics, Timers and other variables
Properties
Name Type Argument Description metricsobject <optional>
Custom Metrics
timersobject <optional>
Custom Timers
varsobject <optional>
Additional beacon parameters
whenobject <optional>
Timestamp for the event
Example
BOOMR.sendAll({ metrics: { conversion: 1, size: 1000 }, timers: { customTimer1: 125 }, vars: { var1: 1, var2: 2 }, when: 9999999 }); -
sendBeacon( [beacon_url_override])
-
Request boomerang to send its beacon with all queued beacon data (via
BOOMR.addVar).Boomerang may ignore this request.
When this method is called, boomerang checks all plugins. If any plugin has not completed its checks (ie, the plugin's
is_complete()method returnsfalse, then this method does nothing.If all plugins have completed, then this method fires the
BOOMR#event:before_beaconevent with all variables that will be sent on the beacon.After all
BOOMR#event:before_beaconhandlers return, this method checks if abeacon_urlhas been configured and if there are any beacon parameters to be sent. If both are true, it fires the beacon.The
BOOMR#event:beaconevent is then fired.sendBeacon()should be called any time a plugin goes fromis_complete() = falsetois_complete = trueso the beacon is sent.The actual beaconing is handled in
BOOMR.real_sendBeaconafter a short delay (viaBOOMR.setImmediate). If other calls tosendBeaconhappen beforeBOOMR.real_sendBeaconis called, those calls will be discarded (so it's OK to call this in quick succession).Parameters:
Name Type Argument Description beacon_url_overridestring <optional>
Beacon URL override
-
sendMetric(name [, value])
-
Sends a Custom Metric immediately
Parameters:
Name Type Argument Description namestring Metric name
valuenumber <optional>
Metric value (1 if not specified)
Examples
BOOMR.sendMetric("conversion");BOOMR.sendMetric("size", 1000); -
sendMetrics(metrics)
-
Sends a set of Custom Metrics immediately
Parameters:
Name Type Description metricsobject An object containing Custom Metric names and values
Examples
BOOMR.sendMetrics({ "conversion": 1 });BOOMR.sendMetrics({ "conversion": 1, "size": 1000 }); -
sendTimer(name, value)
-
Sends a Custom Timer immediately
Parameters:
Name Type Description namestring Timer name
valuenumber Timer value
Example
BOOMR.sendTimer("customTimer1", 125); -
sendTimers(timers)
-
Sends a set of Custom Timers immediately
Parameters:
Name Type Description timersobject An object containing Custom Timer names and values
Example
BOOMR.sendTimers({ "customTimer1": 125 }); -
sendXhrPostBeacon(xhr [, paramsJoined])
-
Sends a beacon via XMLHttpRequest
Parameters:
Name Type Argument Description xhrobject XMLHttpRequest object
paramsJoinedobject <optional>
XMLHttpRequest.send() argument
-
setImmediate(fn [, data] [, cb_data] [, cb_scope])
-
Defer the function
fnuntil the next instant the browser is free from user tasks.Parameters:
Name Type Argument Description fnBOOMR~setImmediateCallback The callback function.
dataobject <optional>
Any data to pass to the callback function
cb_dataobject <optional>
Any passthrough data for the callback function. This differs from
datawhensetImmediateis called via an event handler anddatais the Event objectcb_scopeobject <optional>
The scope of the callback function if it is a method of an object
Returns:
nothing
-
setReferrer(r)
-
Sets the Referrers variable.
Parameters:
Name Type Description rstring Referrer from the document.referrer
-
setVarPriority(name, pri)
-
Sets a variable's priority in the beacon URL. -1 = beginning of the URL 0 = middle of the URL (default) 1 = end of the URL
Parameters:
Name Type Description namestring Variable name
prinumber Priority (-1 or 1)
Returns:
Type: BOOMR
Boomerang object
-
subscribe(e_name, fn, cb_data, cb_scope, once)
-
Subscribes to a Boomerang event
Parameters:
Name Type Description e_namestring Event name, i.e.
BOOMR#event:page_ready.fnBOOMR~subscribeCallback Callback function
cb_dataobject Callback data, passed as the second parameter to the callback function
cb_scopeobject Callback scope. If set to an object, then the callback function is called as a method of this object, and all references to
thiswithin the callback function will refer tocb_scope.onceboolean Whether or not this callback should only be run once
Returns:
Type: BOOMR
Boomerang object
-
uninstrumentFetch()
-
Undo fetch instrumentation and reset the original
fetchfunctionThis is implemented in
plugins/auto-xhr.jsBOOMR.plugins.AutoXHR. -
uninstrumentXHR()
-
Undo XMLHttpRequest instrumentation and reset the original
XMLHttpRequestobjectThis is implemented in
plugins/auto-xhr.jsBOOMR.plugins.AutoXHR. -
visibilityState()
-
Gets the
document.visibilityState, orvisibleif Page Visibility is not supported.Returns:
Type: string
Visibility state
-
warn(m [, s])
-
Logs warning messages to the console
Parameters:
Name Type Argument Description mstring Message
sstring <optional>
Source
Type Definitions
-
addObserverCallback(mutations, callback_data)
-
The callback function may return a falsy value to disconnect the observer after it returns, or a truthy value to keep watching for mutations. If the return value is numeric and greater than 0, then this will be the new timeout. If it is boolean instead, then the timeout will not fire any more so the caller MUST call disconnect() at some point.
Parameters:
Name Type Description mutationsArray.<object> List of mutations detected by the observer or
undefinedif the observer timed outcallback_dataobject Is the passed in
callback_dataparameter without modifications -
setImmediateCallback(data, cb_data, callstack)
-
The callback function may return a falsy value to disconnect the observer after it returns, or a truthy value to keep watching for mutations. If the return value is numeric and greater than 0, then this will be the new timeout. If it is boolean instead, then the timeout will not fire any more so the caller MUST call disconnect() at some point
Parameters:
Name Type Description dataobject The passed in
dataobjectcb_dataobject The passed in
cb_dataobjectcallstackError An Error object that holds the callstack for when
setImmediatewas called, used to determine what called the callback -
subscribeCallback(eventData, cb_data)
-
Parameters:
Name Type Description eventDataobject Event data
cb_dataobject Callback data
Events
-
beacon
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired when a beacon was sent.
The beacon variables cannot be modified at this point. Any calls to
BOOMR.addVarorBOOMR.removeVarwill apply to the next beacon.Also known as
onbeacon.Properties:
Name Type Description varsobject Beacon variables
-
before_beacon
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired when a beacon is about to be sent.
The subscriber can still add variables to the beacon at this point, either by modifying the
varsparamter or callingBOOMR.addVar.Properties:
Name Type Description varsobject Beacon variables
-
before_early_beacon
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired when an early beacon is about to be sent.
The subscriber can still add variables to the early beacon at this point by calling
BOOMR.addVar.This event will only happen if
BOOMR.plugins.Earlyis enabled.Properties:
Name Type Description dataobject Event data
-
before_unload
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired before the document is about to be unloaded.
window.beforeunloadwill trigger this. -
bfcache
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired when an BFCache navigation occurs.
The subscriber can still add variables to the BFCache beacon at this point by calling
BOOMR.addVar.This event will only happen if
BOOMR.plugins.BFCacheis enabled.Properties:
Name Type Description dataobject Event data
-
click
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired when the
clickevent has happened on thedocument. -
config
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired whenever new configuration data is applied via
BOOMR.init.Also known as
onconfig.Properties:
Name Type Description dataobject Configuration data
-
dom_loaded
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired on
document.DOMContentLoaded.The
DOMContentLoadedevent is fired when the initial HTML document has been completely loaded and parsed, without waiting for stylesheets, images, and subframes to finish loading -
error
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired whenever a page error has happened.
This event will only happen if
BOOMR.plugins.Errorsis enabled.Also known as
onerror.Properties:
Name Type Description errobject Error
-
form_submit
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired when any
FORMelement is submitted. -
netinfo
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired whenever connection information changes via the Network Information API.
This event will only happen if
BOOMR.plugins.Mobileis enabled.Properties:
Name Type Description connectionobject navigator.connection -
page_load_beacon
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired when the page load beacon has been sent.
This event should only happen once on a page. It does not apply to SPA soft navigations.
Properties:
Name Type Description varsobject Beacon variables
-
page_ready
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired when the page is usable by the user.
By default this is fired when
window.onloadfires, but if you setautorunto false when callingBOOMR.init, then you must explicitly fire this event by callingBOOMR#event:page_ready.Properties:
Name Type Argument Description eventEvent <optional>
Event triggering the page_ready
See:
-
page_unload
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired just before the browser unloads the page.
The first event of
window.pagehide,window.beforeunload, orwindow.unloadwill trigger this. -
prerender_to_visible
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired when the
visibilityStateof the document has changed fromprerendertovisible -
rage_click
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired whenever a Rage Click is detected.
This event will only happen if
BOOMR.plugins.Continuityis enabled.Properties:
Name Type Description eEvent Event
-
spa_cancel
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired whenever a SPA navigation is cancelled.
-
spa_init
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired whenever a SPA plugin is about to track a new navigation.
Properties:
Name Type Description parametersArray.<object> Navigation type (
spaorspa_hard), URL and timings -
spa_navigation
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired whenever a SPA navigation is complete.
Properties:
Name Type Description parametersArray.<object> Timings
-
visibility_changed
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired on
document.visibilitychange.The
visibilitychangeevent is fired when the content of a tab has become visible or has been hidden. -
xhr_error
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired whenever and
XMLHttpRequesthas an error (if itsstatusis set).This event will only happen if
BOOMR.plugins.AutoXHRis enabled.Also known as
onxhrerror.Properties:
Name Type Description dataobject XHR data
-
xhr_init
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired whenever
XMLHttpRequest.openis called.This event will only happen if
BOOMR.plugins.AutoXHRis enabled.Properties:
Name Type Description typestring XHR type ("xhr")
-
xhr_load
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired when an XMLHttpRequest has finished, or, if something calls
BOOMR.responseEnd.Properties:
Name Type Description dataobject Event data
-
xhr_send
-
Boomerang event, subscribe via
BOOMR.subscribe.Fired whenever
XMLHttpRequest.sendis called.This event will only happen if
BOOMR.plugins.AutoXHRis enabled.Properties:
Name Type Description xhrobject XMLHttpRequestobject