diff --git a/resources/assets/vue/vuex/modules/crudRequest.js b/resources/assets/vue/vuex/modules/crudRequest.js index 832d833e..80c54afb 100644 --- a/resources/assets/vue/vuex/modules/crudRequest.js +++ b/resources/assets/vue/vuex/modules/crudRequest.js @@ -6,6 +6,7 @@ export default { return dispatch('ensureReCaptchaIsSet').then(function () { let combinedAbsoluteUrl = endpoint; if(window.LARAVEL_VAPOR_ENABLED){ + endpoint = encodeSpecificPartOfUrl(endpoint); let queryDomain = endpoint.split('?')[0]; let encodedParams = endpoint.split('?')[1]; let decodedParams = fullyDecodeURI(encodedParams); @@ -68,3 +69,10 @@ function encodeUrlWithoutQueryParameter(url){ return url; } + +function encodeSpecificPartOfUrl(url) { + let encodedUrl = url.replace('[','%5B'); + encodedUrl = encodedUrl.replace(']','%5D'); + encodedUrl = encodedUrl.replace(',','%2C'); + return encodedUrl; +} diff --git a/resources/assets/vue/vuex/modules/crudRequestV2.js b/resources/assets/vue/vuex/modules/crudRequestV2.js index 9d91c4ee..578d9564 100644 --- a/resources/assets/vue/vuex/modules/crudRequestV2.js +++ b/resources/assets/vue/vuex/modules/crudRequestV2.js @@ -2,6 +2,7 @@ export default { actions: { crudRequestV2({getters, dispatch}, {endpoint, method, parameters}){ return dispatch('ensureReCaptchaIsSet').then(function () { + endpoint = encodeSpecificPartOfUrl(endpoint); let queryDomain = endpoint.split('?')[0]; let encodedParams = endpoint.split('?')[1]; let decodedParams = fullyDecodeURI(encodedParams); @@ -64,3 +65,10 @@ function encodeUrlWithoutQueryParameter(url){ return url; } + +function encodeSpecificPartOfUrl(url) { + let encodedUrl = url.replace('[','%5B'); + encodedUrl = encodedUrl.replace(']','%5D'); + encodedUrl = encodedUrl.replace(',','%2C'); + return encodedUrl; +}