Skip to content

Commit 467ce46

Browse files
authored
Merge pull request #412 from GeorgopoulosIoannis/Decode-by-Content-Type
Fix decoding
2 parents f849d25 + 939461b commit 467ce46

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

src/components/api-request.js

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1211,8 +1211,15 @@ export default class ApiRequest extends LitElement {
12111211
const contentType = tryResp.headers.get('content-type');
12121212
if (contentType) {
12131213
if (contentType.includes('json')) {
1214-
respJson = await tryResp.json();
1215-
me.responseText = JSON.stringify(respJson, null, 2);
1214+
if (/charset=[^"']+/).test(contentType)) {
1215+
const enc = contentType.split('charset=')[1];
1216+
const buffer = await tryResp.arrayBuffer();
1217+
const respJson = new TextDecoder(enc).decode(buffer);
1218+
me.responseText = JSON.stringify(respJson, null, 2);
1219+
} else {
1220+
respJson = await tryResp.json();
1221+
me.responseText = JSON.stringify(respJson, null, 2);
1222+
}
12161223
} else if (RegExp('^font/|tar$|zip$|7z$|rtf$|msword$|excel$|/pdf$|/octet-stream$').test(contentType)) {
12171224
me.responseIsBlob = true;
12181225
me.responseBlobType = 'download';

0 commit comments

Comments
 (0)