Есть ли недостатки в использовании CDN только для частей Bootstrap JS? - PullRequest
0 голосов
/ 13 февраля 2019

Я создаю Bootstrap с пользовательскими стилями, используя локальную копию исходных файлов SASS, как описано в официальной документации , и импортирую их в файл custom.scss.

Я в основном готов настроить внешний вид, а не функциональность;так, например: цвета, типографика и так называемые « Sass options ».

В этом сценарии есть какие-либо недостатки или возможные проблемы при импорте JS-части Bootstrap(Я имею в виду, в частности, bootstrap.bundle.min.js) в моем проекте с использованием CDN вместо предоставления его из локальной системы?

РЕДАКТИРОВАТЬ: Обратите внимание, что я не спрашиваю, как загрузкаресурс из CDN отличается от загрузки его из локального, я просто спрашиваю, может ли загрузка части Boostrap из CDN, а другой из локальной привести к проблемам или непредвиденному поведению.


Это, вероятно, глупый вопрос, я вполне уверен, что могу сделать это, не сталкиваясь с какими-либо проблемами, но я хотел бы получить отзыв от кого-то более опытного, чем я.

1 Ответ

0 голосов
/ 13 февраля 2019

Если вы можете, вы должны сами разместить JS.

Поскольку bootstrap использует параметры целостности в своем примере кода «как использовать», вам не нужно бояться атак на межсайтовый скриптинг, еслиих CDN скомпрометирован (если вы не оставите их в своем коде).Файлы просто не будут загружены.Однако это все же не то, что вам нужно: если их CDN скомпрометированы или их серверы просто рухнут, вы больше не сможете загружать JS, и части вашего приложения могут стать непригодными для использования.

Однако вы можетепервая попытка обслуживания с cdn и, если это невозможно, предоставьте пользователю локальную версию.Таким образом, вы можете использовать кеш и сохранять при загрузке серверов начальной загрузки.Вот небольшая выдержка, взятая из freecodecamp :

<script>
  if (! $.fn.modal) {
    document.write('<script src="YOUR JS LOCATION"></script>');
  }
</script>

. Вы должны поместить это в строку, где вы включаете загрузочный CDN.

Код просто проверяет, является ли функцияиз начальной загрузки доступно и если не загружает его с вашего локального сервера.

...