Letters (A–Z and a–z), numbers (0–9) and the characters ‘*’,‘-’,‘.’ and ‘_’ are left as-is and Ember correctly encodes = out of the box. See what happens if you type x=y as query param Myapp
So, you are trying to say that Ember behaves correctly i.e. it ignores = , as its a reserved character (as per link) and hence we shouldn’t be having that value in url. Please correct me if wrong.
Sorry for bumbing an old thread but I don’t understand the difference in the two links? Both understand that x=y is the query. In ember you’ll end up with just x.
Note, this only fails when the value is set via the URL. If you set it from inside Ember it’ll be encoded and work.
The = is allowed only as the separator between the name of the query parameter and its value. So you can do &x=y, but you cannot do &x=y=z. In the first case, the parameterx gets the valuey. In the second case, it’s an attempt to make the parameterx get the valuey=z, which isn’t allowed.
You can also grab the query search string by using window.location.search, which will make your code
encodeURIComponent(window.location.search);
I would actually recommend that you encode that url value like above which should work with Ember since you’re encoding the equal sign along with it. It’s better for security purposes too.