Hi, question,
CA does urlencoding through (for example, or mostly?) caNavUrl with a default to encode. We have issues lately where requests to our installations fail upstream with 400 on the encodings.
It appears to be new traefik rules.
We first noticed them on double encodings (like a quicksearch "some.*" becoming %25A, where * would be %2A and % got %25), but later users reported proper single encodings as well like ../lookup/Entity/Get/types/199%3B202%3B208%3B205/noSubtypes/0/noInline/0?types=199%3B202%3B208%3B205&term=+++"
The semicolon is valid URL syntax for separating path arguments, and urlencoding is a valid technique as well. So I'm wondering if urlencoding false (so dont=true) would be a valid default too - before we start battling our upstream that will probably argue with security matters 🙂
There will probably be reasons currently unknown to me why CA chose to urlencode/rawurlencode as the default ?
https://github.com/collectiveaccess/providence/blob/44e405ad0f2e325ac8a0ca4af9fa6dc0af885bfb/app/helpers/navigationHelpers.php#L185