gin 使用 pack2 打包 html到二进制

直接上我的一个web播放器的样例代码片段

主要是 LoadTemplate 方法

然后打包的时候需要用packr2工具:

#安装编译工具,用于打包html到二进制
go get -u github.com/gobuffalo/packr/v2/packr2
#build和go build一样,交叉编译的方式也是一样的
CGO_ENABLED=0 GOOS=linux GOARCH=arm packr2 build  -o 115_player
#简单点的
packr2 build  -o 115_player

 

代码片段: 浏览全部

PHP、golang 如何播放mp4文件

php的处理过程

<?php
function PutMovie(file) {
    header("Content-type: video/mp4");
    header("Accept-Ranges: bytes");size = filesize(file);
    if(isset(_SERVER['HTTP_RANGE'])){
        header("HTTP/1.1 206 Partial Content");
        list(name,range) = explode("=", _SERVER['HTTP_RANGE']);
        list(begin, end) =explode("-",range);
        if(end == 0)end = size - 1;
    }
    else {begin = 0; end =size - 1;
    }
    header("Content-Length: " . (end -begin + 1));
    header("Content-Disposition: filename=".basename(file));
    header("Content-Range: bytes ".begin."-".end."/".size);
 
    fp = fopen(file, 'rb');
    fseek(fp,begin);
    while(!feof(fp)) {p = min(1024, end -begin + 1);
        begin +=p;
        echo fread(fp,p);
    }
    fclose($fp);
}
PutMovie("1.mp4");

golang的处理过程

http.ServeFile(w, r, "/webserver/1.mp4")