Как я могу протестировать решение для кэширования javascript? - PullRequest
0 голосов
/ 06 февраля 2020

Я изучаю некоторые из установленных методов принудительной перезагрузки кэшированных javascript файлов. Проблема в том, что я не могу получить скрипт для локального кэширования. Я проверил вкладку сети Chrome, чтобы отключить опцию «Отключить кэш». Я использую MVC, чтобы добавить это на домашнюю страницу сайта:

@section scripts
{
@Scripts.Render("~/Scripts/app/test.js")
}

А вот и тест. js content:

alert('Welcome to 2');

Если я изменю текст предупреждения и обновить sh страницу, независимо от того, был ли проект перезапущен или нет, это всегда бесплатно sh ...

1 Ответ

0 голосов
/ 07 февраля 2020

Обычно это проблема конфигурации сервера. https://medium.com/pixelpoint/best-practices-for-cache-control-settings-for-your-website-ff262b38c5a2

Для разработчика на стороне клиента, который не хочет связываться с настройками сервера, вы также можете изменить файл test.js на файл test.php (буквально просто измените расширение), назовите его точно так же, как вы его называете (за исключением, опять же, изменения расширения на PHP) и добавьте что-то вроде этого в самый верх файла PHP:

<?php
$seconds_to_cache = 3600;
$ts = gmdate("D, d M Y H:i:s", time() + $seconds_to_cache) . " GMT";
header("Expires: $ts");
header("Pragma: cache");
header("Cache-Control: max-age=$seconds_to_cache");
?>

Затем загрузите его на свой сервер. Пока ваш сервер обрабатывает PHP (он, вероятно, делает), этот код должен заставлять браузер кэшировать новый файл, который будет функционировать так же, как любой файл JS. (Взято из https://electrictoolbox.com/php-caching-headers/)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...