Fix HEAD request failing with `Invalid response for blob` (#19567)
Summary: Fixes #18223 This is a fairly simple solution to what seems to be a recurring issue where certain requests that result in an empty body where JSON is expected throw an error rather than being handled gracefully. Client side error handling is not being hit as this is being thrown at a lower level. Make a http request that results in an empty blob: "" [INTERNAL] [BUGFIX] [XMLHttpRequest.js] - Line 262 Pull Request resolved: https://github.com/facebook/react-native/pull/19567 Differential Revision: D8314416 Pulled By: hramos fbshipit-source-id: a17c49f3620f0abbb936f3a1c2b01aa1b64820fd
This commit is contained in:
parent
d517214dd4
commit
7e9c3f77cc
|
@ -246,6 +246,8 @@ class XMLHttpRequest extends EventTarget(...XHR_EVENTS) {
|
||||||
case 'blob':
|
case 'blob':
|
||||||
if (typeof this._response === 'object' && this._response) {
|
if (typeof this._response === 'object' && this._response) {
|
||||||
this._cachedResponse = BlobManager.createFromOptions(this._response);
|
this._cachedResponse = BlobManager.createFromOptions(this._response);
|
||||||
|
} else if (this._response === '') {
|
||||||
|
this._cachedResponse = null;
|
||||||
} else {
|
} else {
|
||||||
throw new Error(`Invalid response for blob: ${this._response}`);
|
throw new Error(`Invalid response for blob: ${this._response}`);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue