¿Cómo crear una API Node.js que pueda enviar datos de indicación de progreso a la vista frontal?

Estoy trabajando en un proyecto MEAN como mi hobby. Utilizo Node.js como extremo trasero y Angular.js como extremo delantero. Node.js ejecutará una tarea de larga duración (tarda unos 30 minutos para ejecutar esta tarea), quiero mostrar el estado de la tarea en la página de visualización. ¿Cómo puedo conseguir esto?

Tal vez socket.io es una buena opción.

Socket.IO permite la comunicación bidireccional basada en eventos en tiempo real. Y con esto, el servidor puede tomar la iniciativa para enviar un mensaje al cliente.

Visita http://socket.io/ para más información.

Creo que lo que estás hablando es una solicitud transmitida. Eche un vistazo a este http://strongloop.com/strongblog/streaming-chunked-html-node-js-data/ .

Y en el extremo frontal hay un método de API de Javascript llamado EventSource que puede leer una respuesta transmitida o, como alguien más mencionó, puede usar sockets si necesita comunicación bidireccional.