Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

104
Views
¿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
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!