summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/client-hints/resources/echo-ua-client-hints-received.py
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/client-hints/resources/echo-ua-client-hints-received.py')
-rw-r--r--testing/web-platform/tests/client-hints/resources/echo-ua-client-hints-received.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/testing/web-platform/tests/client-hints/resources/echo-ua-client-hints-received.py b/testing/web-platform/tests/client-hints/resources/echo-ua-client-hints-received.py
new file mode 100644
index 0000000000..7982421d07
--- /dev/null
+++ b/testing/web-platform/tests/client-hints/resources/echo-ua-client-hints-received.py
@@ -0,0 +1,23 @@
+import importlib
+client_hints_ua_list = importlib.import_module("client-hints.resources.clienthintslist").client_hints_ua_list
+
+def main(request, response):
+ """
+ Simple handler that sets a response header based on which client hint
+ request headers were received.
+ """
+
+ response.headers.append(b"Access-Control-Allow-Origin", b"*")
+ response.headers.append(b"Access-Control-Allow-Headers", b"*")
+ response.headers.append(b"Access-Control-Expose-Headers", b"*")
+
+ client_hint_headers = client_hints_ua_list()
+ request_client_hints = {i: request.headers.get(i) for i in client_hint_headers}
+
+ for header in client_hint_headers:
+ if request_client_hints[header] is not None:
+ response.headers.set(header + b"-received", request_client_hints[header])
+
+ headers = []
+ content = u""
+ return 200, headers, content