JSROOT does not print much debug output at this place, but content-type in response header must include multipart string. It is starting point in the modules/io.mjs code around line 3045.
the result of the above curl command is the following:
HTTP/1.1 416 REQUESTED RANGE NOT SATISFIABLE
Date: Tue, 15 Apr 2025 20:13:28 GMT
Server: Apache/2.4.58 (Ubuntu)
Content-Range: bytes */1135099764
Content-Length: 177
Content-Type: text/html; charset=utf-8
<!doctype html>
<html lang=en>
<title>416 Requested Range Not Satisfiable</title>
<h1>Requested Range Not Satisfiable</h1>
<p>The server cannot provide the requested range.</p>
When I use /files route as in the last version of the send_file_partial function I am able to get rid of 416 error but the request is still single: