Hacker News new | ask | show | jobs
by shockeychap 1203 days ago
I kinda wish it did remove all querystrings. The vast majority of querystrings are nothing more than tracking and marketing garbage, and I can handle the rare situation where one is needed manually. Stripping from a known list of values just means that marketers will start using random identifiers with clever ingestion code, making this mechanism less useful over time.
4 comments

Stripping all querystrings would break tons of sites, such as this one we're on right now.
It's even worse than using random query strings. Last year, Facebook, Amazon and some other sites started using encrypted URLs that can't be decoded and modified before hitting the server. The good news is that this won't work with just an analytics JS snippet, but the technology will get easier to implement and spread over time. https://www.schneier.com/blog/archives/2022/07/facebook-is-n...
Unfortunately that won't help as it's perfectly possible to add tracking parameters in a static-looking portion of a URL.

Removing all query parameters might encourage that practice, and ultimately even push sites towards creating completely opaque, server-side resolved unique sharing URLs.

Very true. This is a nuclear arms race that I'm afraid users will ultimately lose. The kind of fingerprinting that has been used to determine TOR users is what the end-game ultimately looks like. It's already being done anyway. It's very difficult to avoid, and you will not be able to use 90% of the mainstream internet if you do.
Sort of. Adding an unexpected query variable is generally well handled, which allows Facebook to add fbclid to all outbound links without breaking most sites. Stuffing the tracker into the static part of the URL requires way more integration work.
Klipper (KDE's clipboard tool) lets you set up this sort of thing pretty easily. It can take actions when a certain type of content is copied. So, you can match on "^http[^?]*" and "echo %0" (you can call any program, builtins are provided for MIME types, so you can, for example, launch a browser when you copy a URL) as the action will allow you to replace the copied URL automatically/on-request.