Ten en cuenta que en la informática cualquier problema casi siempre tiene varias resoluciones, por lo tanto nosotros mostramos lo más óptimo y mejor.
Solución:
Transfer-Encoding: chunked
no es necesario para el renderizado progresivo. De todos modos, eso es necesario cuando se desconoce la longitud total del contenido antes de que se envíen los primeros bytes.
Cuando el servidor necesita enviar una gran cantidad de datos, el servidor utiliza la codificación fragmentada porque no sabía exactamente qué tan grandes (longitud) iban a ser los datos. En términos de HTTP, cuando el servidor envía la respuesta, el servidor omite el encabezado Content-Length. En su lugar, el servidor escribe la longitud del fragmento actual en formato hexadecimal seguido de rn y luego del fragmento, seguido de rn (el contenido comienza con el tamaño del fragmento en hexadecimal seguido del fragmento)
Esta función se puede utilizar para renderizado progresivo; sin embargo, el servidor necesita vaciar los datos tanto como sea posible para que el cliente pueda procesar el contenido progresivamente (en el caso de html, css, etc.)
Esta característica se usa a menudo cuando el servidor envía datos al cliente en grandes cantidades, generalmente en gran tamaño (mega/giga).
Documentación de Mozilla