From c5e821c358660d5fd13f6407d46518af0065a750 Mon Sep 17 00:00:00 2001 From: Mike West Date: Wed, 3 Mar 2021 13:18:39 +0000 Subject: [PATCH] WPT: `Sec-Fetch-*` headers aren't accessible in service workers. As requested in https://github.com/whatwg/fetch/pull/993. Change-Id: Ie6096154ad9f6af73e2c26e0bb0c8f72a2a7a99a Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2727263 Reviewed-by: Matt Falkenhagen Commit-Queue: Mike West Cr-Commit-Position: refs/heads/master@{#859345} GitOrigin-RevId: 371392c37dfd0b6830aba1b3648dbfcaab5ff1af --- .../serviceworker-accessors-frame.html | 3 ++ .../resources/serviceworker-accessors.sw.js | 14 +++++ .../serviceworker-accessors.https.sub.html | 51 +++++++++++++++++++ 3 files changed, 68 insertions(+) create mode 100644 blink/web_tests/external/wpt/fetch/metadata/resources/serviceworker-accessors-frame.html create mode 100644 blink/web_tests/external/wpt/fetch/metadata/resources/serviceworker-accessors.sw.js create mode 100644 blink/web_tests/external/wpt/fetch/metadata/serviceworker-accessors.https.sub.html diff --git a/blink/web_tests/external/wpt/fetch/metadata/resources/serviceworker-accessors-frame.html b/blink/web_tests/external/wpt/fetch/metadata/resources/serviceworker-accessors-frame.html new file mode 100644 index 000000000000..987980250054 --- /dev/null +++ b/blink/web_tests/external/wpt/fetch/metadata/resources/serviceworker-accessors-frame.html @@ -0,0 +1,3 @@ + + +Page Title diff --git a/blink/web_tests/external/wpt/fetch/metadata/resources/serviceworker-accessors.sw.js b/blink/web_tests/external/wpt/fetch/metadata/resources/serviceworker-accessors.sw.js new file mode 100644 index 000000000000..36c55a778600 --- /dev/null +++ b/blink/web_tests/external/wpt/fetch/metadata/resources/serviceworker-accessors.sw.js @@ -0,0 +1,14 @@ +addEventListener("fetch", event => { + event.waitUntil(async function () { + if (!event.clientId) return; + const client = await clients.get(event.clientId); + if (!client) return; + + client.postMessage({ + "dest": event.request.headers.get("sec-fetch-dest"), + "mode": event.request.headers.get("sec-fetch-mode"), + "site": event.request.headers.get("sec-fetch-site"), + "user": event.request.headers.get("sec-fetch-user") + }); + }()); +}); diff --git a/blink/web_tests/external/wpt/fetch/metadata/serviceworker-accessors.https.sub.html b/blink/web_tests/external/wpt/fetch/metadata/serviceworker-accessors.https.sub.html new file mode 100644 index 000000000000..03a8321d4cab --- /dev/null +++ b/blink/web_tests/external/wpt/fetch/metadata/serviceworker-accessors.https.sub.html @@ -0,0 +1,51 @@ + + + + + + + + +