From f44597e38b5a9df0e7f28ea3eb2d62930fbbd74b Mon Sep 17 00:00:00 2001 From: Maximilian Hoffmann Date: Thu, 23 Jul 2015 10:46:21 +0200 Subject: [PATCH] =?UTF-8?q?don=E2=80=99t=20escape=20square=20brackets?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/helpers/buildUrl.js | 6 ++++-- test/specs/helpers/buildUrl.spec.js | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/helpers/buildUrl.js b/lib/helpers/buildUrl.js index b25f0ef..966a521 100644 --- a/lib/helpers/buildUrl.js +++ b/lib/helpers/buildUrl.js @@ -8,7 +8,9 @@ function encode(val) { replace(/%3A/gi, ':'). replace(/%24/g, '$'). replace(/%2C/gi, ','). - replace(/%20/g, '+'); + replace(/%20/g, '+') + replace(/%5B/gi, '['). + replace(/%5D/gi, ']'); } /** @@ -31,7 +33,7 @@ module.exports = function buildUrl(url, params) { } if (utils.isArray(val)) { - key = key+'[]'; + key = key + '[]'; } if (!utils.isArray(val)) { diff --git a/test/specs/helpers/buildUrl.spec.js b/test/specs/helpers/buildUrl.spec.js index 604d442..ce3989e 100644 --- a/test/specs/helpers/buildUrl.spec.js +++ b/test/specs/helpers/buildUrl.spec.js @@ -30,7 +30,7 @@ describe('helpers::buildUrl', function () { it('should support array params', function () { expect(buildUrl('/foo', { foo: ['bar', 'baz'] - })).toEqual('/foo?foo%5B%5D=bar&foo%5B%5D=baz'); + })).toEqual('/foo?foo[]=bar&foo[]=baz'); }); it('should support special char params', function () {