- Just created new angular application (version – 17.3.9) using command
ng new url-test-app
- then start application using command –
npm start
- Now I navigate to
http://localhost:4200
. It works fine - Then add a new query param with value
%_24Q3
, for example,
http://localhost:4200/?testParam=test%_24Q3
We will get below issue,
URI malformed
at decodeURI (<anonymous>)
at viteTransformMiddleware (file:///D:/angular/url-test- app/node_modules/vite/dist/node/chunks/dep-k5wXcrSr.js:63436:19)
at call (file:///D:/angular/url-test-app/node_modules/vite/dist/node/chunks/dep-k5wXcrSr.js:42750:7)
at next (file:///D:/angular/url-test-app/node_modules/vite/dist/node/chunks/dep-k5wXcrSr.js:42694:5)
at viteHMRPingMiddleware (file:///D:/angular/url-test-app/node_modules/vite/dist/node/chunks/dep-k5wXcrSr.js:64700:13)
at call (file:///D:/angular/url-test-app/node_modules/vite/dist/node/chunks/dep-k5wXcrSr.js:42750:7)
at next (file:///D:/angular/url-test-app/node_modules/vite/dist/node/chunks/dep-k5wXcrSr.js:42694:5)
at next (file:///D:/angular/url-test-app/node_modules/vite/dist/node/chunks/dep-k5wXcrSr.js:42672:14)
at viteCachedTransformMiddleware (file:///D:/angular/url-test-app/node_modules/vite/dist/node/chunks/dep-k5wXcrSr.js:63421:9)
at call (file:///D:/angular/url-test-app/node_modules/vite/dist/node/chunks/dep-k5wXcrSr.js:42750:7
I am not able to handle this with Angular error handler
http://localhost:4200/?testParam=test%_24Q3
That URL is malformed, because %
indicates the start of a hex-encoded value, but you got no valid hex digits following that.
You need to properly URL-encode the %
, as %25
– so your URL needs to be http://localhost:4200/?testParam=test%25_24Q3
. Then calling decodeURI
on it will work fine.