Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1602)

Unified Diff: content/browser/service_worker/service_worker_fetch_dispatcher.cc

Issue 2473263003: Set "Service-Worker-Navigation-Preload" header (Closed)
Patch Set: Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/service_worker/service_worker_fetch_dispatcher.cc
diff --git a/content/browser/service_worker/service_worker_fetch_dispatcher.cc b/content/browser/service_worker/service_worker_fetch_dispatcher.cc
index f26bb19ff3ed0398fe4fe9c6758ba319ac276d02..4426c1c0491aa33c9814bac06e8180d3e45dfc6b 100644
--- a/content/browser/service_worker/service_worker_fetch_dispatcher.cc
+++ b/content/browser/service_worker/service_worker_fetch_dispatcher.cc
@@ -26,6 +26,7 @@
#include "content/common/url_loader_factory.mojom.h"
#include "content/public/common/browser_side_navigation_policy.h"
#include "content/public/common/content_features.h"
+#include "net/http/http_util.h"
#include "net/log/net_log.h"
#include "net/log/net_log_capture_mode.h"
#include "net/log/net_log_event_type.h"
@@ -332,10 +333,14 @@ void ServiceWorkerFetchDispatcher::MaybeStartNavigationPreload(
request.render_frame_id = original_info->GetRenderFrameID();
request.is_main_frame = original_info->IsMainFrame();
request.parent_is_main_frame = original_info->ParentIsMainFrame();
+
+ DCHECK(net::HttpUtil::IsValidHeaderValue(
+ version_->navigation_preload_state().header));
+ request.headers = "Service-Worker-Navigation-Preload: " +
+ version_->navigation_preload_state().header;
+
const int request_id = ResourceDispatcherHostImpl::Get()->MakeRequestID();
DCHECK_LT(request_id, -1);
- // TODO(horo): Add "Service-Worker-Navigation-Preload" header.
- // See: https://github.com/w3c/ServiceWorker/issues/920#issuecomment-251150270
factory->CreateLoaderAndStart(GetProxy(&preload_handle_->url_loader),
original_info->GetRouteID(), request_id,
request, std::move(url_loader_client));

Powered by Google App Engine
This is Rietveld 408576698