Tengo un problema extraño con Vite.js y solo ocurre en Samsung Internet cuando estoy en el servidor de desarrollo...
Problema: la página se recarga automáticamente 3 segundos en un bucle y no configuro ni escribo ningún intervalo... la recarga de la página ocurre a nivel del navegador.
Estas son recargas no deseadas y quiero deshacerme de ellas.
¿Alguna idea de por qué sucede?
Respuesta editada:
Ok, miré más de cerca este problema y encontré algunas posibles soluciones.
Samsung Internet (igual que Chrome) no permite conexiones websocket (ws) no seguras a localhost (solo wss, por lo que debe configurar un certificado TLS para su servidor web/websocket local). Sin embargo, lo mismo debería funcionar bien con Firefox.
Otro motivo de este error podría ser "sobrecargar" el mismo puerto. Tal vez otra aplicación, que está ejecutando, use el puerto 3000. La solución sería detener ese proceso o cambiar nuevamente el puerto.
Solución de prueba: ¿Funciona el código si haces esto?
// Original line new WebSocket(`${socketProtocol}://${socketHost}`, 'vite-hmr') // Replace with exact url with port that you are running the app new WebSocket("ws://localhost:3000")Parece que el navegador de Internet de Samsung no permite websockets inseguros .
Una solución es habilitar HTTPS en Vite con server.https , para que cree un Websocket seguro:
// vite.config.js import { defineConfig } from 'vite' export default defineConfig({ ⋮ server: { https: true, } })Verificado con Vite 2.7.13 y Samsung Internet 16.0.6.23