aboutsummaryrefslogtreecommitdiffstats
path: root/src/server/HttpServer.hx
diff options
context:
space:
mode:
authorRblSb <msrblsb@gmail.com>2022-11-05 23:11:49 +0300
committerRblSb <msrblsb@gmail.com>2022-11-06 01:08:05 +0300
commit3cf8531b06ab5647bd86136a1aaab9561d44be32 (patch)
tree3f2116cd26216993bed02ab8521a36fb9b227ee4 /src/server/HttpServer.hx
parent9aced72ee93a8e3a44efa8c5809c9a24f46827b3 (diff)
Fix downloading for partial content
Diffstat (limited to 'src/server/HttpServer.hx')
-rw-r--r--src/server/HttpServer.hx9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/server/HttpServer.hx b/src/server/HttpServer.hx
index 2805770..8e4cf75 100644
--- a/src/server/HttpServer.hx
+++ b/src/server/HttpServer.hx
@@ -123,7 +123,14 @@ class HttpServer {
if (!Fs.existsSync(filePath)) return false;
final videoSize = Fs.statSync(filePath).size;
var range:String = req.headers["range"];
- if (range == null) range = "bytes=0-";
+ if (range == null) {
+ res.statusCode = 200;
+ res.setHeader("Content-Length", '$videoSize');
+ final videoStream = Fs.createReadStream(filePath);
+ videoStream.pipe(res);
+ return true;
+ }
+ // if (range == null) range = "bytes=0-";
final ranges = ~/[-=]/g.split(range);
var start = Std.parseFloat(ranges[1]);
if (Utils.isOutOfRange(start, 0, videoSize - 1)) start = 0;
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage