diff options
| author | MeiMei <30769358+mei23@users.noreply.github.com> | 2021-10-01 02:25:57 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-10-01 02:25:57 +0900 |
| commit | a73a787753a24259ec0846ea5e9c92d072e1fe89 (patch) | |
| tree | a793cb5b502329706fb1b6a73986d0b272e5589f | |
| parent | refactor: prelude/urlでquerystringを使用しないように (diff) | |
| download | sharkey-a73a787753a24259ec0846ea5e9c92d072e1fe89.tar.gz sharkey-a73a787753a24259ec0846ea5e9c92d072e1fe89.tar.bz2 sharkey-a73a787753a24259ec0846ea5e9c92d072e1fe89.zip | |
Fix prelude/url (#7855)
| -rw-r--r-- | src/prelude/url.ts | 2 | ||||
| -rw-r--r-- | test/prelude/url.ts | 13 |
2 files changed, 14 insertions, 1 deletions
diff --git a/src/prelude/url.ts b/src/prelude/url.ts index ce75fe89d1..c7f2b7c1e7 100644 --- a/src/prelude/url.ts +++ b/src/prelude/url.ts @@ -4,7 +4,7 @@ export function query(obj: {}): string { .reduce((a, [k, v]) => (a[k] = v, a), {} as Record<string, any>); return Object.entries(params) - .map((e) => `${e[0]}=${e[1]}`) + .map((e) => `${e[0]}=${encodeURIComponent(e[1])}`) .join('&'); } diff --git a/test/prelude/url.ts b/test/prelude/url.ts new file mode 100644 index 0000000000..1f814968a6 --- /dev/null +++ b/test/prelude/url.ts @@ -0,0 +1,13 @@ +import * as assert from 'assert'; +import { query } from '../../src/prelude/url'; + +describe('url', () => { + it('query', () => { + const s = query({ + foo: 'ふぅ', + bar: 'b a r', + baz: undefined + }); + assert.deepStrictEqual(s, 'foo=%E3%81%B5%E3%81%85&bar=b%20a%20r'); + }); +}); |