diff options
Diffstat (limited to 'tests/wpt/web-platform-tests/network-error-logging/support/cached-with-validation.py')
-rw-r--r-- | tests/wpt/web-platform-tests/network-error-logging/support/cached-with-validation.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/wpt/web-platform-tests/network-error-logging/support/cached-with-validation.py b/tests/wpt/web-platform-tests/network-error-logging/support/cached-with-validation.py new file mode 100644 index 00000000000..f98a503a51e --- /dev/null +++ b/tests/wpt/web-platform-tests/network-error-logging/support/cached-with-validation.py @@ -0,0 +1,17 @@ +ETAG = '"123abc"' +CONTENT_TYPE = "text/plain" +CONTENT = "lorem ipsum dolor sit amet" + +def main(request, response): + # let caching kick in if possible (conditional GET) + etag = request.headers.get("If-None-Match", None) + if etag == ETAG: + response.headers.set("X-HTTP-STATUS", 304) + response.status = (304, "Not Modified") + return "" + + # cache miss, so respond with the actual content + response.status = (200, "OK") + response.headers.set("ETag", ETAG) + response.headers.set("Content-Type", CONTENT_TYPE) + return CONTENT |