Tengo una aplicación Angular Universal que llama a un servicio de API web ASP.Net.
Puse las escrituras de Console en la llamada Angular al servicio web (que se inició desde el constructor de un componente o ngOnInit, probé ambos) y la función de suscriptor en Typescript, así como en el método Web API.
Al ejecutar la aplicación, noto que la aplicación Angular Universal no espera el resultado de la API web.
El último mensaje de escritura de la consola que recibo es de la API web, no de la función en la llamada del suscriptor.
¿Cómo puedo obligar a la aplicación Angular Universal a esperar el resultado antes de terminar el renderizado?
Siempre que esté utilizando Angular HttpClient , la representación del lado del servidor debe esperar a que finalice antes de entregar su respuesta.
Si esto no funciona para usted, intente suscribirse a la llamada usando el | async tubería | async en su código de plantilla.
Por ejemplo:
export class MyComponent { public response$ = this.httpClient.get<string>('https://my.api'); constructor(private httpClient: HttpClient){} } <span> {{ response$ | async }} </span>