AJAX работает, если открыты инструменты Chrome Dev, но не закрыты ли веб-инструменты Chrome?

Я загружаю файл JSON через AJAX. Если инструменты Chrome dev открыты, все работает отлично. Если инструменты разработчика Chrome закрыты, произойдет сбой. К счастью, инструменты dev продолжают работать, даже когда закрыты, так что я все еще могу видеть полученное исключение:

Failed to load resource: the server responded with a status of 412 (Precondition Failed) http://localhost/experiments/escape/maps/test.json

С какой стати существует условие, открыты ли инструменты разработки? Кроме того, кажется маловероятным, что открытие и закрытие инструментов dev может каким-либо образом повлиять на поведение сервера, поэтому я думаю, что Chrome препятствует выполнению запроса, а не серверу, как предлагается в исключении.

К сожалению, dev tools не отслеживает сетевую активность в закрытом состоянии, поэтому я не могу использовать вкладку сети для получения дополнительной информации.

AJAX обрабатывается через JQuery со следующим кодом:

map.load = function(mapName, tileSource, tileWidth, tileHeight, onLoad) {
    $.ajax({
        url: '../escape/maps/'+mapName+'.json',
        type: 'post',
        success: function(mapData) {
            // there's loads of stuff in here but I don't think it's relevant to the question as the failure prevents the success method from being called.
        }
    });
};

Этот код не вызывает никаких проблем в Firefox, и, похоже, он специально связан с Chrome Dev Tools. Любые предложения приветствуются, так как я совершенно сбит с толку!

РЕДАКТИРОВАТЬ: Хорошо, так что это вовсе не ошибка инструментов dev - я отключил кэш в инструментах dev, повторно включив его, чтобы скрипт работал правильно. Почему мой код зависит от кеша? Отключение / включение кеша в Firefox не вызывает никаких проблем

EDIT2: Хорошо, я думаю, что я близко. Предварительное условие, которое терпит неудачу, является условием if-Modified-Since (файл не изменился). Я предполагаю, что chrome отправляет это, чтобы подтвердить, следует ли использовать кэшированную версию, однако, несмотря на невыполнение предварительного условия, он не загружает кэшированную версию. Я подумал, что это может означать, что кеш каким-то образом поврежден, поэтому я очистил кеш. К сожалению, это не решает проблему. Файл будет успешно загружен один раз, но в следующий раз я вернусь туда, где я начал с той же проблемой. Есть идеи?

Ответы на вопрос(1)

Ваш ответ на вопрос