feat(Request): introduce Request.failure() method (#1065)

Similarly to the `request.response()` method, this patch adds
`request.failure()` method that returns error details for the failed
requests.

Fixes #901.
This commit is contained in:
Andrey Lushnikov
2017-10-17 17:48:04 -07:00
committed by GitHub
parent 8717203fb2
commit 273c733237
3 changed files with 30 additions and 0 deletions

View File

@@ -259,6 +259,7 @@ class NetworkManager extends EventEmitter {
// @see https://crbug.com/750469
if (!request)
return;
request._failureText = event.errorText;
request._completePromiseFulfill.call(null);
this._requestIdToRequest.delete(request._requestId);
this._interceptionIdToRequest.delete(request._interceptionId);
@@ -284,6 +285,7 @@ class Request {
this._allowInterception = allowInterception;
this._interceptionHandled = false;
this._response = null;
this._failureText = null;
this._completePromise = new Promise(fulfill => {
this._completePromiseFulfill = fulfill;
});
@@ -304,6 +306,17 @@ class Request {
return this._response;
}
/**
* @return {?{errorText: string}}
*/
failure() {
if (!this._failureText)
return null;
return {
errorText: this._failureText
};
}
/**
* @param {!Object=} overrides
*/