It does state in the documentation previously linked
…our service automatically passes on all query string parameters to destination paths for redirects…
This is handy because you can have a redirect configured, e.g.
/in /to/somewhere
then have parameters on this URL e.g. (assuming your site is example.com
)
https://example.com/in?from=somewhere&via=whoever
which then get passed along automatically e.g.
https://example.com/to/somewhere?from=somewhere&via=whoever
This is great for redirects for affiliate links, UTM Campaign tracking etc. Along with this you can have
/in utm_campaign=:utm_campaign /to/somewhere?utm_source=twitter&utm_campaign=:utm_campaign
so when you use the link
https://example.com/in?utm_campaign=some-cool-campaign
this gets appended to the redirect
https://example.com/to/somewhere?utm_source=twitter&utm_campaign=some-cool-campaign
meaning you could use the same URL for multiple campaigns on the same platform/site (and if utm_campaign
is it missing, the redirect condition fails so does not trigger.)
This is a functionality I am using with a URL shortener I have recently started working on to reduce the number of redirects required.
While I cannot (and do not) speak for Netlify, dropping this functionality isn’t something I would see as advantageous. Possibility they can work around this and offer a way of dropping the query string forwarding on a per-URL basis.
I found reference to Android Webview having issues with query strings in this post from 2012 (yes, 10 years ago!) so this is not a new thing. I also found this workaround though as I don’t partake in Android development, I cannot say if it works or is useful to your use case.