Skip to content

Commit 608c2c7

Browse files
authored
Merge pull request #886 from chantouchsek/fix/885-encode-url
Fix/885 encode url
2 parents f3ac9fb + 7f72ae1 commit 608c2c7

File tree

10 files changed

+3336
-2589
lines changed

10 files changed

+3336
-2589
lines changed

package.json

Lines changed: 25 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -47,34 +47,35 @@
4747
},
4848
"homepage": "https://github.com/chantouchsek/vue-axios-http#readme",
4949
"devDependencies": {
50-
"@commitlint/cli": "^17.0.0",
51-
"@commitlint/config-conventional": "^17.0.0",
52-
"@nuxt/types": "^2.15.8",
53-
"@types/lodash": "^4.14.182",
54-
"@types/node": "^20.2.0",
55-
"@types/qs": "^6.9.7",
56-
"@typescript-eslint/eslint-plugin": "^5.49.0",
57-
"@typescript-eslint/parser": "^5.9.0",
58-
"@vitest/coverage-c8": "^0.33.0",
59-
"@vue/test-utils": "^1.3.3",
60-
"axios-mock-adapter": "^1.20.0",
61-
"eslint": "^8.13.0",
50+
"@commitlint/cli": "^17.7.1",
51+
"@commitlint/config-conventional": "^17.7.0",
52+
"@nuxt/types": "^2.16.3",
53+
"@types/lodash": "^4.14.199",
54+
"@types/node": "^20.7.0",
55+
"@types/qs": "^6.9.8",
56+
"@typescript-eslint/eslint-plugin": "^5.62.0",
57+
"@typescript-eslint/parser": "^5.62.0",
58+
"@vitest/coverage-v8": "^0.34.5",
59+
"@vue/test-utils": "^1.3.6",
60+
"axios-mock-adapter": "^1.22.0",
61+
"eslint": "^8.50.0",
6262
"eslint-config-prettier": "^9.0.0",
63-
"eslint-plugin-import": "^2.24.2",
64-
"eslint-plugin-prettier": "^4.0.0",
65-
"eslint-plugin-promise": "^6.0.0",
66-
"husky": "^8.0.1",
67-
"jsdom": "^22.0.0",
68-
"lint-staged": ">=10",
63+
"eslint-plugin-import": "^2.28.1",
64+
"eslint-plugin-prettier": "^4.2.1",
65+
"eslint-plugin-promise": "^6.1.1",
66+
"husky": "^8.0.3",
67+
"jsdom": "^22.1.0",
68+
"lint-staged": ">=14.0.1",
6969
"nodemon": "^3.0.1",
70-
"nuxt": "^2.15.8",
71-
"prettier": "^2.4.1",
72-
"rimraf": "^5.0.1",
73-
"standard-version": "^9.3.1",
70+
"nuxt": "^2.16.3",
71+
"prettier": "^2.8.8",
72+
"rimraf": "^5.0.4",
73+
"sass": "^1.68.0",
74+
"standard-version": "^9.5.0",
7475
"ts-node": "^10.9.1",
7576
"typescript": "^5.0.4",
76-
"vite": "^4.0.4",
77-
"vitest": "^0.31.1",
77+
"vite": "^4.4.9",
78+
"vitest": "^0.34.5",
7879
"vue": "^2.7.14"
7980
},
8081
"files": [

src/__tests__/base-service.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import type { ValidatorType } from '../core/Validator'
22
import Axios from 'axios'
33
import MockAdapter from 'axios-mock-adapter'
44
import { merge } from 'lodash'
5+
import { beforeEach, describe, expect, it } from 'vitest'
56
import BaseService from '../core/BaseService'
67
import Validator from '../core/Validator'
78
import PostService from '../util/PostService'

src/__tests__/form-data.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { describe, expect, it } from 'vitest'
12
import { objectToFormData } from '../util'
23

34
describe('FormData', () => {

src/__tests__/object.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { afterEach, describe, expect, it } from 'vitest'
12
import { hasFiles, isFile } from '../util'
23

34
describe('Object Test', () => {

src/__tests__/package.spec.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { mount } from '@vue/test-utils'
2+
import { describe, expect, test } from 'vitest'
23
import Vue from 'vue'
34
import AxiosHttp from '../'
45
import { addElemWithDataAppToBody, disableTransitions, sleep } from '../util'

src/__tests__/post-service.spec.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import Axios from 'axios'
22
import MockAdapter from 'axios-mock-adapter'
3+
import { beforeEach, describe, expect, it } from 'vitest'
34
import BaseService from '../core/BaseService'
45
import PostService from '../util/PostService'
56

src/__tests__/validator.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import type { ValidatorType } from '../core/Validator'
2+
import { afterEach, beforeEach, describe, expect, it, test } from 'vitest'
23
import Validator from '../core/Validator'
34

45
describe('Validator', () => {

src/core/BaseService.ts

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import type { AxiosError, AxiosInstance, Method, AxiosRequestConfig, AxiosResponse } from 'axios'
22
import type { IParseOptions } from 'qs'
33
import { isObject } from 'lodash'
4-
import qs from 'qs'
4+
import { parse, stringify } from 'qs'
55
import Validator from './Validator'
66
import { hasFiles, objectToFormData } from '../util'
77

@@ -121,7 +121,13 @@ export default class BaseService {
121121
}
122122

123123
private __getParameterString(url: string) {
124-
const query = qs.stringify(this.parameters, { encode: false, skipNulls: true, addQueryPrefix: true })
124+
const query = stringify(this.parameters, {
125+
encode: true,
126+
skipNulls: true,
127+
addQueryPrefix: true,
128+
encodeValuesOnly: true,
129+
strictNullHandling: true,
130+
})
125131
return `${url}${query}`
126132
}
127133

@@ -139,7 +145,7 @@ export default class BaseService {
139145
allowDots: true,
140146
ignoreQueryPrefix: true,
141147
})
142-
const params = qs.parse(parameter, options)
148+
const params = parse(parameter, options)
143149
return this.setParameters(params)
144150
}
145151
this.parameters[parameter] = value

vite.config.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import { defineConfig } from 'vite'
22

33
export default defineConfig({
44
test: {
5-
globals: true,
65
deps: {
76
interopDefault: true,
87
},

0 commit comments

Comments
 (0)