Bug 126720 - Improper conditional request handling
Summary: Improper conditional request handling
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Page Loading (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Major
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-01-09 14:14 PST by Lee Jensen
Modified: 2018-03-21 03:50 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Lee Jensen 2014-01-09 14:14:07 PST
This has been an issue at least since the public release version of safari shipped with Mavericks as far as I can tell. Possibly earlier. The symptoms are the periodic appearance of a blank page when refreshing. It appears to be due to improper handling of conditional requests when refresh is requested by the user. 

# Steps to reproduce
 * Access a resource that delivers conditional content (Cache-control: public as well so things are actually cached)
 * Open web inspector and hit return in your URL bar till you note safari sending conditional requests and receiving 304s back
 * Refresh the page (cmd+r or refresh in url bar)

# Result
A blank page should appear.

# Expected result
The page content should be rendered

On the final/full refresh safari seems to be sending a conditional request (if-none-match present in the request headers). The server responds appropriately with a 304 response and a blank body. It's as if Webkit assumes that sent an unconditional request and fails to load the response from cache.

For reference the following URL exhibits the behavior described in the Mavericks build of Safari and the latest nightly as of writing.
http://pilotthisplanedown.bigcartel.com