Recientemente he visto algunos enlaces utilizados sin un protocolo. No parecía demasiado difícil de entender; creo que es una gran idea y bastante intuitiva.
Para aquellos de ustedes que no lo saben, el uso de una URL como //example.com/script.js
apuntará a cualquiera http://example.com/script.js
o https://example.com/script.js
dependiendo de si la URL se origina o no en una URL http o https . Incluir secuencias de comandos http o imágenes de una página https puede ser un problema de seguridad, por ejemplo, por lo que esto lo resuelve sin la necesidad de detección de protocolo en su código.
Mi pregunta es, ¿qué tipo de soporte de navegador / sistema operativo hay? ¿Es seguro usarlo en producción? Ciertamente facilitaría un poco las cosas.
Ejemplo simple y prueba: http://codetester.org/916c6916
EDITAR: Solo un seguimiento de que he estado usando esto para el servidor de anuncios de mi empresa en producción para muchas cosas sin problemas durante un par de años.
fuente
Respuestas:
Este comportamiento fue parte de RFC 1808 (Sección 4), que tiene aproximadamente 16 años, por lo que todos los navegadores principales deberían (y lo hacen) admitirlo.
Lamentablemente, hay un error con IE7 y -8 que hará que descarguen los recursos dos veces si se usa una URL relativa al protocolo en un
link
o@import
, lo cual no debería ser un gran problema, pero es feo y debe tenerse en cuenta.fuente
//code.jquery.com/jquery-2.1.3.min.js
se encontró la URL y no se cargó la biblioteca. Luego trato de cargarhttp://code.jquery.com/jquery-2.1.3.min.js
y veo una página de error. Sospecho que hay una configuración de seguridad de proxy, VPN o firewall que establecen internamente. Después de actualizar la URL para usar elhttps
protocolo, todo funciona bien.Si está desarrollando en una máquina local, existe la posibilidad de que falle con
src="file://host.com/filename".
En esta situación, debe especificar el esquema explícitamente:
http://host.com/filename
ohttps://host.com/filename
.fuente