I’m fairly sure this is related to the issue discussed here: ServiceWorker thinks I'm offline when I'm not.
Testing on the latest Chrome browser on Ubuntu with both the Adblock and Adblock Plus browser extensions, having either extension installed but disabled for a single Discourse site prevents the House Ads navigation item from being added to the nav bar:
The error in the console is
NetworkFirst.js:120 Uncaught (in promise) no-response: no-response :: [{"url":"https://global.discourse-cdn.com/business4/assets/plugins/discourse-adplugin-78e860fa781ab21eafa70bfb3c8514cc572a1ff6eb65774509c6c022e1fbf211.br.js"}] at u._handle (https://global.discourse-cdn.com/business4/assets/workbox-77b0e3e0dd4773bcd6c7e74f302f7c69/workbox-strategies.prod.js:54:13) at async u.Rt (https://global.discourse-cdn.com/business4/assets/workbox-77b0e3e0dd4773bcd6c7e74f302f7c69/workbox-strategies.prod.js:40:10)
If I go to the web inspector’s Application tab and select the “Bypass for network” checkbox, the file loads without any issues.
This wouldn’t be a huge deal, but the issue also affects house ads that are served with a script. For example, house ads that are served from a revive adserver. In that case, the paused adblocker prevents the revive server’s /asyncjs.php
file from being served. It produces the same error as I posted above.
This seems to be an issue with the extension and not with Discourse, but I wonder if there’s anything Discourse could do to deal with it.
It seems like the problem has been around for a while. Here’s an Adblock Plus bug report from 2018, posted by someone from the Financial TImes: Blocking service worker requests when Adblock Plus disabled - Adblock Plus