From 3773a4cdfff26297981094cb5c48e755ac75a77c Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Wed, 6 Jan 2021 18:09:59 +0100 Subject: browser fixes --- packages/taler-wallet-webextension/src/browserHttpLib.ts | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'packages/taler-wallet-webextension/src/browserHttpLib.ts') diff --git a/packages/taler-wallet-webextension/src/browserHttpLib.ts b/packages/taler-wallet-webextension/src/browserHttpLib.ts index bfc855633..08364e404 100644 --- a/packages/taler-wallet-webextension/src/browserHttpLib.ts +++ b/packages/taler-wallet-webextension/src/browserHttpLib.ts @@ -24,6 +24,7 @@ import { HttpRequestOptions, HttpResponse, Headers, + bytesToString, } from "taler-wallet-core"; import { TalerErrorCode } from "taler-wallet-core"; @@ -78,10 +79,16 @@ export class BrowserHttpLib implements HttpRequestLibrary { reject(exc); return; } + const makeText = async (): Promise => { + const td = new TextDecoder(); + return td.decode(myRequest.response); + }; const makeJson = async (): Promise => { let responseJson; try { - responseJson = JSON.parse(myRequest.responseText); + const td = new TextDecoder(); + const responseString = td.decode(myRequest.response); + responseJson = JSON.parse(responseString); } catch (e) { throw OperationFailedError.fromCode( TalerErrorCode.WALLET_RECEIVED_MALFORMED_RESPONSE, @@ -126,7 +133,7 @@ export class BrowserHttpLib implements HttpRequestLibrary { headers: headerMap, requestMethod: method, json: makeJson, - text: async () => myRequest.responseText, + text: makeText, bytes: async () => myRequest.response, }; resolve(resp); @@ -149,7 +156,7 @@ export class BrowserHttpLib implements HttpRequestLibrary { ): Promise { return this.fetch(url, { method: "POST", - body, + body: JSON.stringify(body), ...opt, }); } -- cgit v1.2.3