diff --git a/packages/sdk-rtl/src/transport.spec.ts b/packages/sdk-rtl/src/transport.spec.ts index 77444127e..ee8e2224a 100644 --- a/packages/sdk-rtl/src/transport.spec.ts +++ b/packages/sdk-rtl/src/transport.spec.ts @@ -61,5 +61,8 @@ describe('Transport', () => { expect(encodeParam('foo/bar')).toEqual('foo%2Fbar') expect(encodeParam(true)).toEqual('true') expect(encodeParam(2.3)).toEqual('2.3') + expect(encodeParam({ created_date: 'this year to second' })).toEqual( + '{"created_date":"this year to second"}' + ) }) }) diff --git a/packages/sdk-rtl/src/transport.ts b/packages/sdk-rtl/src/transport.ts index f7624de09..20959c36b 100644 --- a/packages/sdk-rtl/src/transport.ts +++ b/packages/sdk-rtl/src/transport.ts @@ -380,7 +380,9 @@ export function encodeParam(value: any) { if (value instanceof Date) { value = value.toISOString() } - let encoded = value.toString() + // check for object type to prevent "[object Object]" as the value.toString() + let encoded = + typeof value === 'object' ? JSON.stringify(value) : value.toString() // decodeURIComponent throws URIError if there is a % character // without it being part of an encoded