diff --git a/js/Client/unicaenVue.js b/js/Client/unicaenVue.js
index ac1debf3ac43d9bd604ae99de032584b53fe671f..9a02b41453fcc2d33e678188b5bbbfb6cc2b23c6 100644
--- a/js/Client/unicaenVue.js
+++ b/js/Client/unicaenVue.js
@@ -23,10 +23,30 @@ const unicaenVue = {
         }
 
         // traitement de la requĂȘte GET
-        let getArgs = query ? new URLSearchParams(query).toString() : null;
+        let getArgs = query ? unicaenVue.encodeUrlQueryParam(query) : null;
 
         // Construction et retour de l'URL
         return baseUrl + route + (getArgs ? `?${getArgs}` : '');
+    },
+
+    encodeUrlQueryParam: (query, parentKey) => {
+        var params = [];
+
+        for (var key in query) {
+            if (query.hasOwnProperty(key)) {
+                var value = query[key];
+                var encodedKey = parentKey ? parentKey + '[' + encodeURIComponent(key) + ']' : encodeURIComponent(key);
+
+                if (typeof value === 'object' && value !== null) {
+                    params.push(unicaenVue.encodeUrlQueryParam(value, encodedKey));
+                } else {
+                    var encodedValue = encodeURIComponent(value);
+                    params.push(encodedKey + '=' + encodedValue);
+                }
+            }
+        }
+
+        return params.join('&');
     }
 };