Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Какая разница между одинаковыми, на первый взгляд, версиями jquery? (https://javascript.ru/forum/misc/84694-kakaya-raznica-mezhdu-odinakovymi-na-pervyjj-vzglyad-versiyami-jquery.html)

voraa 18.11.2022 20:57

Цитата:

Сообщение от рони
slim -- нет ajax and effects modules

Ну файлы то разные совсем, и хеш должен быть другой.

javascript_pupil 18.11.2022 21:04

В моем случае slim точно не работает - проверено. Остальное буду изучать. Конечно самое простое решение - использовать первый вариант, но интересно же стало! :write:

voraa 18.11.2022 21:19

Скорее все хеш код другой должен быть. Этот для slim. Где вы его взяли?

рони 18.11.2022 21:39

Цитата:

Сообщение от voraa
хеш код другой должен быть.

генерация на https://www.srihash.org/
выдаёт именно такой
<script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>

voraa 18.11.2022 22:01

Цитата:

Сообщение от рони
выдаёт именно такой

Так там не работает другой, как я понял
<script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>

А этот хеш я находил для slim
и именно его выдал https://www.srihash.org/

<script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>


А без slim должен быть
<script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.min.js" integrity="sha384-ZvpUoO/+PpLXR1lu4jmpXWu80pZlYUAfxl5NsBMWOEPSjUn/6Z/hRTt8+pR6L4N2" crossorigin="anonymous"></script>

Aetae 18.11.2022 22:25

javascript_pupil, на всякий случай, если ты ещё не понял:
Атрибут "integrity" - это не "какие-то магические буковки", это чексумма конкретного файла указанного в src. За исключением супер редких коллизий, каждому существующему файлу может соответствовать только одна конкретная чексумма по конкретному алгориму(sha384, sha256 и т.р.). Для чего это нужно? Для того чтобы гарантировать, что файл не изменился, после того как ты его проверил и подключил на сайт: т.е. если внезапно cdn.jsdelivr.net взломают и начнут отдавать по этому адресу вместо jquery какой-нить вирус - браузер просто откажется его загружать, т.к. чексумма не будет соответствовать содержимому скрипта.

Теперь к причине твоей проблемы: ты, очевидно, взял откуда-то готовый кусок кода для загрузки jquery.slim после чего просто убрал из src slim. Т.е. чексумма осталась от предыдущего файла и не соответствует новому - ничего не работает.

javascript_pupil 18.11.2022 22:38

Цитата:

Сообщение от Aetae
если ты ещё не понял

Уже понял из предыдущих ответов, но всё равно спасибо за разъяснения. :)

Цитата:

Сообщение от Aetae
просто убрал из src slim

Именно так и получилось! Ну зато теперь абсолютно ясно зачем всё это. :) Осталось понять что лучше: использовать первый вариант кода или найти где-то правильный integrity для этого файла.

Aetae 18.11.2022 22:44

javascript_pupil, ты можешь просто скопировать integrity из первого. По логике вещей они должны быть идентичны.
Также ты можешь сгенерировать новый с помощь сервиса предложенного выше или сходить на сайт jquery.com и забрать официальную чексумму.

javascript_pupil 18.11.2022 22:45

Получилось! :dance: Всем спасибо! :victory:


Часовой пояс GMT +3, время: 04:25.