Users have started having problems with Flash-based traffic under Chrome 80: Cookies are not being sent with POST
requests.
I'm aware of the SameSite
updates, but our traffic is all same-domain, so I assumed this wouldn't affect us.
Debugging the request headers from the debug tools:
Here's what I note:
In an older version of Chrome 73:
- there are no
Sec-Fetch-*
headers Origin
header is always correct- cookies are sent properly
In Chrome 80, GET requests:
Origin
is correct, and cookies are sent- now has
Sec-Fetch-*
headers - the
Sec-Fetch-Site
cookie sayscross-site
-- Is this right? This is determined by the browser, correct? Why would Chrome label the traffic as cross-site? - the request URL is the same as my page, same aswindow.location.hostname
.
In Chrome 80, POST requests:
Sec-Fetch-*
cookies same as GET- the
Origin
header isnull
- wait, why? This also is assigned by the browser, right? Why null? - cookies are not sent
This makes absolutely no sense to me. It's always worked, and we don't use multiple domains, and our cookies are secure
and httponly
. Can someone help me understand:
- why Chrome 80 would label my requests as
Sec-Fetch-Site: cross-site
? - why Chrome 80 would send
Origin: null
and no cookies for POSTs?