1. Підсумок
Відповідь на 2019 рік: ви все ще можете використовувати URL-адреси щодо протоколу, але ця методика є антидіаграмою .
Також:
- У вас можуть виникнути проблеми в розвитку.
- Деякі сторонні інструменти можуть не підтримувати їх.
Перехід від URL-адрес, що відносяться до протоколу, https://
було б непогано.
2. Актуальність
Ця відповідь актуальна для січня 2019 року. Надалі дані цієї відповіді можуть бути застарілими.
3. Антидіаграма
3.1. Аргументація
Пол Ірландський - інженер-розробник та прихильник розробника Google Chrome - напишіть у 2014 році, грудень :
Тепер, коли SSL заохочується для всіх і не має проблем із ефективністю , ця методика тепер є антидіаграмою . Якщо потрібний вам ресурс доступний у SSL, то завжди використовуйте його https://
.
Дозвіл фрагменту запитувати HTTP відкриває двері для таких атак, як недавня атака GitHub Man-on-the-Side . Завжди безпечно запитувати активи HTTPS, навіть якщо ваш сайт перебуває на HTTP, однак зворотне не відповідає дійсності .
3.2. Ще посилання
3.3. Приклади
4. Процес розробки
Наприклад, я намагаюся використовувати чисту консоль .
- Приклад файлу
KiraCleanConsole__cdn_links_demo.html
:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>clean-console without protocol demonstration</title>
<!-- Really dead link -->
<script src="https://unpkg.com/bowser@latest/bowser.min.js"></script>
<!-- Package exists; link without “https:” -->
<script src="//cdn.jsdelivr.net/npm/jquery@3.3.1/dist/jquery.min.js"></script>
<!-- Package exists: link with “https:” -->
<script src="https://cdn.jsdelivr.net/npm/gemini-scrollbar/index.js"></script>
</head>
<body>
Kira Goddess!
</body>
</html>
D:\SashaDebugging>clean-console -i KiraCleanConsole__cdn_links_demo.html
checking KiraCleanConsole__cdn_links_demo.html
phantomjs: opening page KiraCleanConsole__cdn_links_demo.html
phantomjs: Unable to load resource (#3URL:file://cdn.jsdelivr.net/npm/jquery@3.3.1/dist/jquery.min.js)
phantomjs: phantomjs://code/runner.js:30 in onResourceError
Error code: 203. Description: Error opening //cdn.jsdelivr.net/npm/jquery@3.3.1/dist/jquery.min.js: The network path was not found.
phantomjs://code/runner.js:31 in onResourceError
phantomjs: Unable to load resource (#5URL:https://unpkg.com/bowser@2.1.0/bowser.min.js)
phantomjs: phantomjs://code/runner.js:30 in onResourceError
Error code: 203. Description: Error downloading https://unpkg.com/bowser@2.1.0/bowser.min.js - server replied: Not Found
phantomjs://code/runner.js:31 in onResourceError
phantomjs: Checking errors after sleeping for 1000ms
2 error(s) on KiraCleanConsole__cdn_links_demo.html
phantomjs process exited with code 2
Посилання //cdn.jsdelivr.net/npm/jquery@3.3.1/dist/jquery.min.js
дійсне, але я отримую помилку.
Зверніть увагу file://cdn.jsdelivr.net/npm/jquery@3.3.1/dist/jquery.min.js
і прочитайте відповіді про Thilo та bg17awfile://
.
Я не знав про таку поведінку і не міг зрозуміти, чому у мене такі проблеми із сторінками .
5. Сторонні інструменти
Я використовую пакунки з URL-адресами Sublime Text. Використовуючи це, я можу просто відкривати посилання зі свого текстового редактора в браузері.
Обидва посилання в прикладі дійсні. Але перше посилання, яке я можу успішно відкрити в браузері, використовує URL-адреси, що натискають, друге посилання - ні. Це може бути не дуже зручно.
6. Висновок
Так:
- Якщо у вас є проблеми, як в
Developing process
предметі, ви можете встановити робочий процес розвитку.
- Якщо у вас є проблеми, як у
Third-party tools
предметі, ви можете внести інструменти.
Але вам не потрібні додаткові проблеми. Прочитайте інформацію за посиланнями в Anti-pattern
пункті: URL-адреси щодо протоколів застаріли.