Получить параметры для изменения моего внешнего файла JavaScript .php для загрузки различного содержимого - PullRequest
1 голос
/ 28 сентября 2010

Если я использую параметры GET, чтобы изменить мой внешний файл javascript .php для загрузки различного содержимого, основываясь на том, что браузеры не собираются кэшировать этот файл, верно?они будут обрабатывать global_js.php? page = foo и global_js.php? page = bar, как если бы они имели разные имена, и снова загружать контент, верно?или я должен включить что-то в свой заголовок, чтобы сделать это?

ОБНОВЛЕНИЕ: В файл отправляются различные параметры get, и он загружает различное содержимое.я выбрал плохой подход?Мой CSS выглядит следующим образом:

<link rel="stylesheet" type="text/css" href="./CSS/css_global.php?load={$pagecat}&load_mootools={$load_mootools}&load_jquery={$load_jquery}&css_extra={$css_extra}&version={$xx_version}_{$css_extra}">

Если я помещу каждый из моих нескольких внешних файлов в отдельное файловое событие, хотя будет много запросов http, большинство пользователей не активируют поведение без кэширования в своих браузерах.как и мы, разработчики, они будут кэшировать файлы, что приведет к более быстрому взаимодействию с пользователем, но теперь с другой комбинацией, доступной в моем CSS, она никогда не будет кэшироваться, потому что каждая страница немного отличается в параметрах получения, которые она отправляет в файл CSS.

Ответы [ 2 ]

1 голос
/ 28 сентября 2010

Правильно, браузер будет обрабатывать их как разные файлы.

Я не рекомендую использовать B00MER подход, если вы DO хотите, чтобы файлы были кэшированыпо отдельности.

После того, как файлы были кэшированы индивидуально, вы можете принудительно обновить кэш, добавив в файл параметр версии, поэтому при каждом обновлении приложения (изменения версии) будут кешироваться регенерации.

app.js?module=account&version=1.0_RC2_2010-09-28
1 голос
/ 28 сентября 2010

Возможно, вы захотите попробовать это ПЕРЕД любым выводом из вашего файла .php, который загружает Javascript.

<?php
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...