Comments (9)
There's a bug starting with Firefox 31. Can you check if this is fixed on
bluesmoon/boomerang?
I had to change if(window.performance) to if("performance" in window). You
may have to do that for the resource timing plugin.
Philip
On 6 Oct 2014 07:21, "Phil Booth" [email protected] wrote:
I've built the current master with the rt and NavigationTiming plugins.
Using Firefox 32.0.3, no beacon request is received by my server, whereas
with Chrome 37.0.2062.124 the beacon request is received correctly.Using the debug build, the console log looks the same in both browsers, no
errors.I also set a breakpoint in sendBeacon() in Firefox, where the image is
created and that works fine. But the network tab shows no request being
made (although I'm less familiar with Firefox dev tools, so this could be
user error) and the server definitely receives nothing.Have you seen or heard of any similar issues, or do you have any ideas
about what might be wrong?—
Reply to this email directly or view it on GitHub
#39.
from boomerang.
So bluesmoon:master looks exactly the same as lognormal:master to me (commit 51d1be7 / 12th August). Or did you mean a different branch in bluesmoon/boomerang?
from boomerang.
No that's it.
The fix I made was here, although you only need to check if ("performance" in window)
:
4dff5da
I suspect it also needs to be done here:
https://github.com/lognormal/boomerang/blob/master/plugins/restiming.js#L28
from boomerang.
Okay, thanks for the tip.
Actually, I've had a closer look and my issue is way weirder and more fundamental than that. If I remove boomerang from the equation entirely and load the following document, I can reproduce the problem:
<!DOCTYPE html>
<html>
<head>
<script>
var image = new Image();
image.src = 'http://localhost:8080/beacon?foo=bar';
</script>
</head>
</html>
But if I remove the query string from the image URL, the server receives the request:
<!DOCTYPE html>
<html>
<head>
<script>
var image = new Image();
image.src = 'http://localhost:8080/beacon';
</script>
</head>
</html>
Presumably Firefox on my machine is borked somehow. Going to delete it, reboot, then reinstall and hopefully that will set me right.
from boomerang.
Interesting. If it doesn't fix it, we may have to look at this in more detail. I've actually been looking at a complete form based beaconing system. It makes the code much simpler with resource timing. We're also looking at compressing the resource timing data before beaconing. Will get you to review when we're satisfied with the results.
from boomerang.
So the problem persists after reinstalling. I don't have another machine to try it out on at the moment, but maybe it's a genuine feature.
However, the problem does not occur if I request a URL that contains a file extension. The file extension itself doesn't seem to matter; .png
, .php
, .html
and .wibble
all worked fine. So it's easy for me to avoid this now, perhaps everyone else is doing it already?
I'm happy to make a pull request against the documentation calling this out explicitly if you like. I guess the correct place would be for the beacon_url
param in /doc/api/BOOMR.html
. Anywhere else?
from boomerang.
Fwiw, I've raised this in Bugzilla as well:
https://bugzilla.mozilla.org/show_bug.cgi?id=1079158
from boomerang.
Thanks. Yeah, putting this in the docs would be useful.
from boomerang.
So in the course of investigating the Firefox issue, after rebooting I can no longer reproduce it. Seems like it may have just been weirdness on my dev machine after all.
Sorry for the time-wasting, I'll leave the docs as they are and close this issue.
from boomerang.
Related Issues (20)
- Support for JAMStack-style single page apps? HOT 5
- Is it possible to use autoxhr plugin without rt plugin? HOT 22
- Which event should I subscribe to control header value? HOT 1
- Can we use Boomerang to send custom metrics/logs? HOT 1
- Bug: Trying to read metric from plugin that is undefined HOT 1
- How does the Cache-Reload Plugin works HOT 3
- API Key Disclosure HOT 2
- how about to move Plugins to webworker
- Integrate Plugins into asynchronous loader snippet HOT 5
- Continuity Visually Ready (c.tti.vr) gradually increased in Chromium 105 and 106 HOT 3
- What event should I subscribe to to know when the fetch is complete HOT 2
- t_done,t_page and rt.tt values are negative on SPA HOT 21
- Global collision issue HOT 2
- about web vital score HOT 1
- How to know user spent time on page HOT 6
- soft navigation not stop
- disable page unload beacon HOT 2
- Potential forced style layout HOT 5
- What is the use of the last_location function in spa plugin HOT 2
- SPA beacon is blocked if link href value is updated after soft navigation HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from boomerang.