Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

105
Visualizações
¿Cómo desactivo las solicitudes que se envían en el cambio de ruta?

Servidor: NodeJS (Express, Passport y MongoStore para middleware) Cliente: VueJS y Vue Router

Antecedentes He notado que cada vez que cambia la ubicación del hash con Vue Router, envía una solicitud GET al servidor en la ruta raíz. Por ejemplo, navegar desde /app#/route1 a /app#/route2 (usando router.go() o <router-link> ) enviará una solicitud GET a /app .

En la lógica de enrutamiento de mi servidor, la ruta de la aplicación se autentica mediante Express/Passport/MongoStore para garantizar que el usuario haya iniciado sesión. Si carga o actualiza una página completa, la respuesta redirigirá al usuario a la pantalla de inicio de sesión si no está autenticado, pero cuando Vue Router envía la solicitud, la autenticación no tiene ningún efecto, ni res.render o res.redirect . (Por lo tanto, si el cliente cierra la sesión en una segunda pestaña, la primera pestaña aún puede navegar por los menús de la primera pestaña, excepto que no se llenarán datos en las páginas, ya que las solicitudes de datos de AJAX y SocketIO se autenticarán por separado).

La diferencia clave, por supuesto, entre un Vue Router GET y un GET de página completa es que "text/html" no se mostrará en los encabezados de solicitud de aceptación, entre otras cosas. Por el momento, el servidor responde con Res.render para todas las solicitudes GET, pero para las navegaciones de Vue Router esto es redundante. Además de esto, el servidor también realiza algunas actualizaciones en MongoDb para configurar algunos entornos para la aplicación, pero esto no es necesario cada vez que el usuario navega por las páginas solo del lado del cliente, solo es necesario en la carga de la página.

Aunque podría modificar alguna lógica del lado del servidor para omitir algunos pasos cuando text/html no está incluido en req.headers.accept , el middleware aún realiza una autenticación innecesaria cada vez que el usuario navega y no puedo ver un beneficio de seguridad inmediato al hacerlo.

Pregunta ¿Es posible configurar Vue Router para que no envíe solicitudes cada vez que cambia la ubicación del hash?

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda