Make interception work with redirects (#218)

This patch:
- changes interception API so that it better aligns with what we'd like to see
  in #121
- fixes the issue with redirect interception

Fixes #217.
This commit is contained in:
Andrey Lushnikov
2017-08-07 17:48:52 -07:00
committed by GitHub
parent e1c5b8d244
commit 34b0095c10
4 changed files with 52 additions and 37 deletions

View File

@@ -247,17 +247,23 @@ class InterceptedRequest {
});
}
continue() {
/**
* @param {!Object} overrides
*/
continue(overrides = {}) {
console.assert(!this._handled, 'This request is already handled!');
this._handled = true;
let headers = {};
for (let entry of this.headers.entries())
headers[entry[0]] = entry[1];
let headers = undefined;
if (overrides.headers) {
headers = {};
for (let entry of overrides.headers.entries())
headers[entry[0]] = entry[1];
}
this._client.send('Network.continueInterceptedRequest', {
interceptionId: this._interceptionId,
url: this.url,
method: this.method,
postData: this.postData,
url: overrides.url,
method: overrides.method,
postData: overrides.postData,
headers: headers
});
}