You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is a problem since MustardBlack.Url is used internally when creating RedirectResults from URL strings, therefore it is not possible to redirect a user to an arbitrary url with confidence it will not be mangled.
Since RFC 3986 offers little specification on the format of query portions of URLs, the safest thing to do would be to preserve whatever is passed in, in scenarios where the Url.QueryCollection is not mutated.
System.Uri handles this use case okay, but is immutable.
The text was updated successfully, but these errors were encountered:
An alternative fix (for the particular problem with redirects) could be to have RedirectResult use System.Uri or just string internally since it doesn't make use of the mutability of MustardBlack.Url
MustardBlack.Url
changes the query portion of a URI when roundtripping ite.g.
(new MustardBlack.Url(str)).ToString()
https://www.test.com/?c=foo&b=bar&a=baz
becomeshttps://www.test.com/?a=baz&b=bar&c=foo
https://www.test.com/?a=1&a=2&a=3
becomeshttps://www.test.com/?a=1%2c2%2c3
This is a problem since
MustardBlack.Url
is used internally when creatingRedirectResult
s from URL strings, therefore it is not possible to redirect a user to an arbitrary url with confidence it will not be mangled.Since RFC 3986 offers little specification on the format of query portions of URLs, the safest thing to do would be to preserve whatever is passed in, in scenarios where the
Url.QueryCollection
is not mutated.System.Uri
handles this use case okay, but is immutable.The text was updated successfully, but these errors were encountered: