• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

263
Views
¿Hay alguna forma en Javascript/Angular de suscribirse a un enlace de evento de 'solicitud enviada'?

Me pregunto si hay una forma en una aplicación Javascript/Angular de conectarse a un evento de 'solicitud enviada' emitido por el navegador inmediatamente después de que envía una solicitud. El propósito es que queremos asegurar/controlar el orden de las solicitudes que salen, y estábamos pensando en enviar cada una en respuesta a la anterior emitiendo un evento de 'solicitud enviada' (de esta manera aseguramos que las solicitudes más importantes salir primero). Queremos permitir que las solicitudes se ejecuten de forma asincrónica/simultánea para que no tengamos la opción de esperar a que regrese una solicitud antes de enviar la siguiente. Queremos enviar cada solicitud tan pronto como sepamos que la anterior se envió con éxito.

El desafío con esto es que el orden en que se envían las solicitudes en el código no coincide con el orden que vemos en la pestaña de red de Chrome, por lo que no podemos confiar en las secuencias de eventos que se ejecutan en el código para garantizar que el Se seguirá la misma secuencia cuando el navegador envíe las solicitudes.

Esta es la razón por la que sería realmente conveniente si pudiéramos conectarnos a un evento de 'solicitud enviada' disparado desde el navegador o algo por el estilo. Eso garantizaría que todas las solicitudes aún puedan salir de forma asíncrona y al mismo tiempo controlar el orden en que salen.

Gracias por cualquier ayuda próxima.

almost 3 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Si desea mantener el orden de las llamadas API, puede usar el operador switchMap .

digamos que tiene dos llamadas api:

 const apiCall1$ = this.http.get("/endpoint1"); const apiCall2$ = this.http.get("/endpoint2");

y quiere esperar a que termine apiCall1 antes de enviar apiCall2, puede hacerlo así:

 apiCall1$.pipe(switchMap(() => apiCall2$)).subscribe({ next: (response) => { //do something... } });
almost 3 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error