From b0379d4cd44fcc2fff46bc32ca80508ad0ed1d51 Mon Sep 17 00:00:00 2001 From: Jaco Greeff Date: Wed, 23 Sep 2020 19:16:57 +0200 Subject: [PATCH] Encode rpc= param (#3751) --- packages/apps/src/Endpoints/index.tsx | 2 +- packages/apps/src/initSettings.ts | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/apps/src/Endpoints/index.tsx b/packages/apps/src/Endpoints/index.tsx index 5918799ebf..53aa23cbfa 100644 --- a/packages/apps/src/Endpoints/index.tsx +++ b/packages/apps/src/Endpoints/index.tsx @@ -194,7 +194,7 @@ function Endpoints ({ className = '', offset, onClose }: Props): React.ReactElem (): void => { uiSettings.set({ ...(uiSettings.get()), apiUrl }); - window.location.assign(`${window.location.origin}${window.location.pathname}?rpc=${apiUrl}${window.location.hash}`); + window.location.assign(`${window.location.origin}${window.location.pathname}?rpc=${encodeURIComponent(apiUrl)}${window.location.hash}`); // window.location.reload(); onClose(); diff --git a/packages/apps/src/initSettings.ts b/packages/apps/src/initSettings.ts index 04c300e297..649eb71e03 100644 --- a/packages/apps/src/initSettings.ts +++ b/packages/apps/src/initSettings.ts @@ -18,7 +18,8 @@ function getApiUrl (): string { if (urlOptions.rpc) { assert(!Array.isArray(urlOptions.rpc), 'Invalid WS endpoint specified'); - const url = urlOptions.rpc.split('#')[0]; // https://polkadot.js.org/apps/?rpc=ws://127.0.0.1:9944#/explorer; + // https://polkadot.js.org/apps/?rpc=ws://127.0.0.1:9944#/explorer; + const url = decodeURIComponent(urlOptions.rpc.split('#')[0]); assert(url.startsWith('ws://') || url.startsWith('wss://'), 'Non-prefixed ws/wss url');