fix bug with 1 query parameter

This commit is contained in:
Dennis Eichhorn 2020-11-26 21:58:18 +01:00
parent e91ebc77bb
commit 391412b4cd

View File

@ -126,33 +126,30 @@ export class UriFactory
*/ */
static unique (url) static unique (url)
{ {
const parsed = HttpUri.parseUrl(url); if (url.includes('?')) {
if (parsed.hasOwnProperty('query')) { const parsed = HttpUri.parseUrl(url);
// unique queries // unique queries
const parts = parsed.query.replace(/\?/g, '&').split('&'), const parts = parsed.query.replace(/\?/g, '&').split('&'),
full = parts[0]; full = url.split('?')[0],
pars = [];
if (parts.length > 1) { let comps = {},
parts.shift(); spl = null,
length = parts.length;
let comps = {}, for (let i = 0; i < length; ++i) {
spl = null, spl = parts[i].split('=');
length = parts.length; comps[spl[0]] = spl[1];
for (let i = 0; i < length; ++i) {
spl = parts[i].split('=');
comps[spl[0]] = spl[1];
}
let pars = [];
for (const a in comps) {
if (comps.hasOwnProperty(a) && comps[a] !== '' && comps[a] !== null) {
pars.push(a + '=' + (comps[a].includes('%') ? comps[a] : encodeURIComponent(comps[a])));
}
}
url = full + '?' + pars.join('&');
} }
for (const a in comps) {
if (comps.hasOwnProperty(a) && comps[a] !== '' && comps[a] !== null) {
pars.push(a + '=' + (comps[a].includes('%') ? comps[a] : encodeURIComponent(comps[a])));
}
}
url = full + '?' + pars.join('&');
} }
// unique fragments // unique fragments