From 8a6475a9c2a20fc0252f1dd091e69d7fd880d18c Mon Sep 17 00:00:00 2001 From: Ilya Kreymer Date: Mon, 8 Jun 2020 14:45:41 -0700 Subject: [PATCH] is-ajax check: only check Sec-Fetch-Mode in proxy mode, only treat 'cors' as ajax, fixes change in #563 (#566) --- pywb/apps/rewriterapp.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pywb/apps/rewriterapp.py b/pywb/apps/rewriterapp.py index 56167906..a6fd5274 100644 --- a/pywb/apps/rewriterapp.py +++ b/pywb/apps/rewriterapp.py @@ -837,10 +837,15 @@ class RewriterApp(object): if value and value.lower() == 'xmlhttprequest': return True - # if Chrome Sec-Fetch-Mode is set and is not 'navigate', then this is likely + + # additional checks for proxy mode only + if not ('wsgiprox.proxy_host' in environ): + return False + + # if Chrome Sec-Fetch-Mode is set and is set to 'cors', then # a fetch / ajax request sec_fetch_mode = environ.get('HTTP_SEC_FETCH_MODE') - if sec_fetch_mode and sec_fetch_mode != 'navigate': + if sec_fetch_mode and sec_fetch_mode == 'cors': return True return False