1. Resumen
Respuesta para 2019: aún puede usar URL relativas al protocolo, pero esta técnica es un antipatrón .
También:
- Puede tener problemas para desarrollarse.
- Algunas herramientas de terceros pueden no ser compatibles.
https://
Sería bueno migrar desde URL relativas al protocolo a él.
2. Relevancia
Esta respuesta es relevante para enero de 2019. En el futuro, los datos de esta respuesta pueden quedar obsoletos.
3. Anti-patrón
3.1. Argumentación
Paul Irish, ingeniero front-end y defensor del desarrollador para Google Chrome , escribe en 2014, diciembre :
Ahora que se recomienda SSL para todos y no tiene problemas de rendimiento , esta técnica ahora es un antipatrón . Si el activo que necesita está disponible en SSL, use siempre el https://
activo.
Permitir que el fragmento solicite a través de HTTP abre la puerta a ataques como el reciente ataque GitHub Man-on-the-side . Siempre es seguro solicitar activos HTTPS incluso si su sitio está en HTTP, sin embargo, lo contrario no es cierto .
3.2. Otros enlaces
3.3. Ejemplos
4. Proceso de desarrollo
Por ejemplo, trato de usar la consola limpia .
- Archivo de ejemplo
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
El enlace //cdn.jsdelivr.net/npm/jquery@3.3.1/dist/jquery.min.js
es válido, pero recibo un error.
Presta atención file://cdn.jsdelivr.net/npm/jquery@3.3.1/dist/jquery.min.js
y lee las respuestas de Thilo y bg17awfile://
.
No sabía sobre este comportamiento y no podía entender por qué tengo problemas como este para los pageres .
5. Herramientas de terceros
Utilizo el paquete de texto sublime de URLs clicables. Úselo, simplemente puedo abrir enlaces desde mi editor de texto en el navegador.
Ambos enlaces, por ejemplo, son válidos. Pero el primer enlace que puedo abrir con éxito en el navegador usa URL clicables, segundo enlace - no. Esto puede no ser muy conveniente.
6. Conclusión
Si:
- Si tiene problemas como en el
Developing process
elemento, puede configurar su flujo de trabajo de desarrollo.
- De lo contrario, tiene problemas como en el
Third-party tools
artículo, puede contribuir con herramientas.
Pero no necesita estos problemas adicionales. Lea la información por enlaces en el Anti-pattern
elemento: las URL relativas al protocolo están obsoletas.