Title: [216111] trunk/Source/WebKit2
Revision
216111
Author
[email protected]
Date
2017-05-03 00:15:41 -0700 (Wed, 03 May 2017)

Log Message

[Soup] Add request headers to network load metrics
https://bugs.webkit.org/show_bug.cgi?id=171545

Reviewed by Sergio Villar Senin.

This will make the headers to appear in the web inspector.

Fixes: http/tests/inspector/network/resource-request-headers.html

* NetworkProcess/soup/NetworkDataTaskSoup.cpp:
(WebKit::NetworkDataTaskSoup::didGetHeaders):

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (216110 => 216111)


--- trunk/Source/WebKit2/ChangeLog	2017-05-03 03:59:24 UTC (rev 216110)
+++ trunk/Source/WebKit2/ChangeLog	2017-05-03 07:15:41 UTC (rev 216111)
@@ -1,3 +1,17 @@
+2017-05-03  Carlos Garcia Campos  <[email protected]>
+
+        [Soup] Add request headers to network load metrics
+        https://bugs.webkit.org/show_bug.cgi?id=171545
+
+        Reviewed by Sergio Villar Senin.
+
+        This will make the headers to appear in the web inspector.
+
+        Fixes: http/tests/inspector/network/resource-request-headers.html
+
+        * NetworkProcess/soup/NetworkDataTaskSoup.cpp:
+        (WebKit::NetworkDataTaskSoup::didGetHeaders):
+
 2017-05-02  Simon Fraser  <[email protected]>
 
         Dynamically added position:fixed element is in the wrong place

Modified: trunk/Source/WebKit2/NetworkProcess/soup/NetworkDataTaskSoup.cpp (216110 => 216111)


--- trunk/Source/WebKit2/NetworkProcess/soup/NetworkDataTaskSoup.cpp	2017-05-03 03:59:24 UTC (rev 216110)
+++ trunk/Source/WebKit2/NetworkProcess/soup/NetworkDataTaskSoup.cpp	2017-05-03 07:15:41 UTC (rev 216111)
@@ -844,6 +844,22 @@
         m_protectionSpaceForPersistentStorage = ProtectionSpace();
         m_credentialForPersistentStorage = Credential();
     }
+
+    // Soup adds more headers to the request after starting signal is emitted, and got-headers
+    // is the first one we receive after starting, so we use it also to get information about the
+    // request headers.
+#if ENABLE(WEB_TIMING)
+    if (shouldCaptureExtraNetworkLoadMetrics()) {
+        HTTPHeaderMap requestHeaders;
+        SoupMessageHeadersIter headersIter;
+        soup_message_headers_iter_init(&headersIter, m_soupMessage->request_headers);
+        const char* headerName;
+        const char* headerValue;
+        while (soup_message_headers_iter_next(&headersIter, &headerName, &headerValue))
+            requestHeaders.set(String(headerName), String(headerValue));
+        m_networkLoadMetrics.requestHeaders = WTFMove(requestHeaders);
+    }
+#endif
 }
 
 void NetworkDataTaskSoup::wroteBodyDataCallback(SoupMessage* soupMessage, SoupBuffer* buffer, NetworkDataTaskSoup* task)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to