Detecta HTTP o HTTPS y luego fuerza HTTPS en JavaScript
¿Hay alguna forma de detectar HTTP o HTTPS y luego forzar el uso de HTTPS con JavaScript?
Tengo algunos códigos para detectar HTTP o HTTPS pero no puedo forzar su uso https:
.
Estoy usando la propiedad window.location.protocol para configurar el sitio y https:
luego actualizar la página y, con suerte, recargar una nueva URL https cargada en el navegador.
if (window.location.protocol != "https:") {
window.location.protocol = "https:";
window.location.reload();
}
Prueba esto
if (location.protocol !== 'https:') {
location.replace(`https:${location.href.substring(location.protocol.length)}`);
}
location.href = blah
agrega esta redirección al historial del navegador. Si el usuario presiona el botón Atrás, será redirigido a la misma página. Es mejor usarlo location.replace
ya que no agrega esta redirección al historial del navegador.
Al configurar location.protocol se navega a una nueva URL . No es necesario analizar/cortar nada.
if (location.protocol !== "https:") {
location.protocol = "https:";
}
Firefox 49 tiene un error que https
funciona pero https:
no. Se dice que está solucionado en Firefox 54 .