You absolutely can tell what’s happening by reading the source code. They are using a listener and a delay for when ontimeupdate promise is not met, which timeouts the entire connection for 5 full seconds.
They don’t need to put incriminating “if Firefox” statements in their code – the initial page request would have included the user agent and it would be trivial to serve different JavaScript based on what it said.
The video in the linked article does just that. The page takes 5 seconds to load the video, the user changes the UA, they refresh the page and suddenly the video loads instantly. I would have liked to see them change the UA back to Firefox to prove it’s not some weird caching issue though
You absolutely can tell what’s happening by reading the source code. They are using a listener and a delay for when
ontimeupdate
promise is not met, which timeouts the entire connection for 5 full seconds.https://pastebin.com/TqjzbqQE
I’m sorry but I don’t see how that check is browser-specific. Is that part happening on the browser side?
They don’t need to put incriminating “if Firefox” statements in their code – the initial page request would have included the user agent and it would be trivial to serve different JavaScript based on what it said.
Easy enough to test though. Load the page with a UA changer and see if it still shows up when Firefox pretends to be Chrome
The video in the linked article does just that. The page takes 5 seconds to load the video, the user changes the UA, they refresh the page and suddenly the video loads instantly. I would have liked to see them change the UA back to Firefox to prove it’s not some weird caching issue though
Yeah, and also Edge or an older version of Chrome etc just to be sure.
deleted by creator
I don’t know, nor am I speculating. The person I was replying to said they didn’t see a browser check in the code, which isn’t enough to dismiss it.
Well, at least I learned that javascript understands exponential notation. I never even bothered to try that lol
Can I have ublock block that? It seems simple enough to extract that code out.