Build a fully-qualified URL from a path and optional query parameters.
Throws a SmardValidationError for a path with a "." or ".." segment. The client puts its
arguments into the path with encodeURIComponent, which leaves those two
unchanged, and URL parsing then resolves them (a region of ".." would request
/app/chart_data/410/index_hour.json). Neither can name a filter, region or
window. (Percent-encoded forms such as "%2e%2e" are safe: encodeURIComponent
turns their "%" into "%25".)
Build a fully-qualified URL from a path and optional query parameters.
Throws a SmardValidationError for a path with a "." or ".." segment. The client puts its arguments into the path with
encodeURIComponent, which leaves those two unchanged, and URL parsing then resolves them (a region of ".." would request/app/chart_data/410/index_hour.json). Neither can name a filter, region or window. (Percent-encoded forms such as "%2e%2e" are safe: encodeURIComponent turns their "%" into "%25".)