Skip to content

Commit 4150469

Browse files
committed
assume error response might or might not wrapped in an array
1 parent e13f9bd commit 4150469

File tree

2 files changed

+6
-13
lines changed

2 files changed

+6
-13
lines changed

packages/firestore/src/platform/browser/webchannel_connection.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,11 +97,11 @@ export class WebChannelConnection extends RestConnection {
9797
xhr.getResponseText()
9898
);
9999
if (status > 0) {
100-
let response = xhr.getResponseJson() as WebChannelError;
100+
let response = xhr.getResponseJson();
101101
if (Array.isArray(response)) {
102102
response = response[0];
103103
}
104-
const responseError = response?.error;
104+
const responseError = (response as WebChannelError)?.error;
105105
if (
106106
!!responseError &&
107107
!!responseError.status &&

packages/firestore/src/platform/browser_lite/fetch_connection.ts

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -69,18 +69,11 @@ export class FetchConnection extends RestConnection {
6969
}
7070

7171
if (!response.ok) {
72-
let errorResponse;
73-
try {
74-
[errorResponse] = (await response.json()) as [
75-
{
76-
error?: { message?: string };
77-
}
78-
];
79-
} catch (_ignored) {}
80-
let errorMessage;
81-
if (errorResponse) {
82-
errorMessage = errorResponse.error?.message;
72+
let errorResponse = await response.json();
73+
if (Array.isArray(errorResponse)) {
74+
errorResponse = errorResponse[0];
8375
}
76+
const errorMessage = errorResponse?.error?.message;
8477
throw new FirestoreError(
8578
mapCodeFromHttpStatus(response.status),
8679
`Request failed with error: ${errorMessage ?? response.statusText}`

0 commit comments

Comments
 (0)