Касательно плюшек, то да на эти вещи hudson богат. Он предоставляет массу вариантов того, что сделать с результатами сборки. Мне понравилось отправление результатов в твиттер =)
Похоже, что это баг. В том проекте, где я это применил использовались только IE и FF.
Я сейчас протестировал в других браузерах. Сhrome — работает, а вот Opera и Safari, похоже не хотят. Друзья, буду рад вашим комментариям, касательно того, как можно добавить поддежку этих двух браузеров.
В теории можно представить себе такую ситацию. Если вы считаете ее достаточно вероятной, то можно вызывать второй запрос из callback'а первого или использовать для этого возможности js фреймворка. В mootools к примеру есть оция link:'chain', которая решает эту проблемму mootools.net/docs/core/Request/Request
В моем случае проверка происходит только при загрузке первой страницы с чекерами. Соглашусь, что ваш подход минимизирует лишние запросы, и должен быть применен, если мы хотим выполнять проверку на каждой странице.
Нужно только учитывать, что время загрузки — не надежный показатель, зависимый не только от проекта и канала связи, но еще и от параллельных процессов выполняемых на компьютере. Поэтому js напуганный большой разницой все равно будет переодически отправлять запросы на проверку кэша.
Нажмите F5 — браузер будет делать запрос игнорируя expires полученые от первого ajax запроса
Впрочем, я вновь буду только рад, если вы предложите решение без 304 Not Modified
Проблемой я называю неоправданно долгую загрузку страниц сайта. Разработчики браузеров предоставили возможность сохранять часть содержимого страницы, и тем самым увеличить скорость загрузки. Отключенный кэш браузера — этой возможности лишает. В этом и заключается проблема.
Две библиотеки — это безусловно скверно. В рамках данного проекта это был результат плохой коммуникции распределенных комманд, каждая из которых считала, что у них-то яйца больше, и они-то знают как делать. Попытки стандартизировать UI и перевести всё на компоненты только одной библиотеки вызывали смятения в рядах влиятельных пользователей, которые привыкли именно к такому дереву или гриду…
Чтобы хранить информацию о том, что первый запрос был показан этому конкретному пользователю. Мы не можем передавать дополнительные GET параметры, URL должен оставаться неизменным чтобы браузер отправил заголовок HTTP_IF_MODIFIED_SINCE и HTTP_IF_NONE_MATCH. А при использовании мемкэша или файловой системы все равно придется как-то учитывать уникальность пользователя.
Впрочем я буду рад решению без сессии, если вы его предложите.
Я сейчас протестировал в других браузерах. Сhrome — работает, а вот Opera и Safari, похоже не хотят. Друзья, буду рад вашим комментариям, касательно того, как можно добавить поддежку этих двух браузеров.
Нужно только учитывать, что время загрузки — не надежный показатель, зависимый не только от проекта и канала связи, но еще и от параллельных процессов выполняемых на компьютере. Поэтому js напуганный большой разницой все равно будет переодически отправлять запросы на проверку кэша.
Впрочем, я вновь буду только рад, если вы предложите решение без 304 Not Modified
Впрочем я буду рад решению без сессии, если вы его предложите.