From 0179c6f8c00d79072be81e2838e3619266283f63 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Sat, 2 May 2020 21:02:46 +0200 Subject: [PATCH] fix query param encoding --- Uri/UriFactory.js | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/Uri/UriFactory.js b/Uri/UriFactory.js index 9774e5b..c4c0ba0 100644 --- a/Uri/UriFactory.js +++ b/Uri/UriFactory.js @@ -145,7 +145,7 @@ export class UriFactory let pars = []; for (const a in comps) { if (comps.hasOwnProperty(a) && comps[a] !== '' && comps[a] !== null) { - pars.push(a + '=' + comps[a]); + pars.push(a + '=' + encodeURIComponent(comps[a])); } } @@ -196,24 +196,24 @@ export class UriFactory } else if (match.indexOf('#') === 0) { const e = document.getElementById(match.substr(1)); - if (e) { - if (e.tagName.toLowerCase() !== 'form') { - return e.value; - } - - let value = ''; - const form = (new FormView(e.id)).getData(); - - for (let pair of form.entries()) { - value += '&' + pair[0] + '=' + pair[1]; - } - - return value; + if (!e) { + return ''; } - return ''; + if (e.tagName.toLowerCase() !== 'form') { + return e.value; + } + + let value = ''; + const form = (new FormView(e.id)).getData(); + + for (let pair of form.entries()) { + value += '&' + pair[0] + '=' + pair[1]; + } + + return value; } else if (match.indexOf('?') === 0) { - returnHttpUri.getUriQueryParameter(current.query, match.substr(1)); + return HttpUri.getUriQueryParameter(current.query, match.substr(1)); } else if (match.indexOf('/') === 0) { return 'ERROR PATH'; } else if (match === '%') {