From d7ae5672631ec3aba73a4a2664d097f48bfbbb5c Mon Sep 17 00:00:00 2001 From: Jan Scheffler Date: Thu, 25 Jun 2020 10:25:47 +0200 Subject: [PATCH] [Network] Keep resource type when redirecting This patch will change the default behavior to mark redirects as type "Other" to instead have them show up with the same type as the original request. To mark them as redirects, the type column will contain a "/ Redirect" after the original type. Screenshot: https://imgur.com/a/86o2cZV Fixed: chromium:997694 Change-Id: If66f1cfe0de6ff5ae10140248696b62e2ad824af Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2265995 Reviewed-by: Benedikt Meurer Reviewed-by: Sigurd Schneider Commit-Queue: Jan Scheffler --- front_end/network/NetworkDataGridNode.js | 4 ++++ front_end/sdk/NetworkManager.js | 2 +- front_end/sdk/NetworkRequest.js | 10 ++++++++++ 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/front_end/network/NetworkDataGridNode.js b/front_end/network/NetworkDataGridNode.js index 7b1850f07d..67c6c101f8 100644 --- a/front_end/network/NetworkDataGridNode.js +++ b/front_end/network/NetworkDataGridNode.js @@ -823,6 +823,10 @@ export class NetworkRequestNode extends NetworkNode { simpleType = mimeType.replace(/^(application|image)\//, ''); } + if (this._request.isRedirect()) { + simpleType += ' / ' + ls`Redirect`; + } + return simpleType; } diff --git a/front_end/sdk/NetworkManager.js b/front_end/sdk/NetworkManager.js index 14715833d8..430b1ae9bb 100644 --- a/front_end/sdk/NetworkManager.js +++ b/front_end/sdk/NetworkManager.js @@ -496,7 +496,7 @@ export class NetworkDispatcher { requestId, loaderId, timestamp, - type: Protocol.Network.ResourceType.Other, + type: type || Protocol.Network.ResourceType.Other, response: redirectResponse, frameId }); diff --git a/front_end/sdk/NetworkRequest.js b/front_end/sdk/NetworkRequest.js index ffc2f16237..a943f246ab 100644 --- a/front_end/sdk/NetworkRequest.js +++ b/front_end/sdk/NetworkRequest.js @@ -90,6 +90,8 @@ export class NetworkRequest extends Common.ObjectWrapper.ObjectWrapper { this._initiator = initiator; /** @type {?NetworkRequest} */ this._redirectSource = null; + /** @type {boolean} */ + this._isRedirect = false; /** @type {?NetworkRequest} */ this._redirectDestination = null; this._issueTime = -1; @@ -1455,9 +1457,17 @@ export class NetworkRequest extends Common.ObjectWrapper.ObjectWrapper { * @param {number} redirectCount */ markAsRedirect(redirectCount) { + this._isRedirect = true; this._requestId = `${this._backendRequestId}:redirected.${redirectCount}`; } + /** + * @return {boolean} + */ + isRedirect() { + return this._isRedirect; + } + /** * @param {string} requestId */