我有一个golang网络服务器,可以从nginx获取视频文件。当我直接从html5标签调用nginx视频时,视频可以流畅地播放渐进式下载。通过渐进式下载,我的意思是随机搜索在没有任何特殊玩家逻辑的情况下工作。<video>但是当我通过golang Web服务器调用它时,它使用golang NewSingleHostReverseProxy()类调用nginx链接,渐进式下载不起作用。是否可以使用golang反向代理启用渐进式下载?golang webserver 中反向代理的代码:url, _ := url.Parse("http://nginx-server/")proxy := httputil.NewSingleHostReverseProxy(url)router.PathPrefix("/video").HandlerFunc(func(w http.ResponseWriter, r *http.Request) { proxy.ServeHTTP(w, r)})
1 回答
UYOU
TA贡献1878条经验 获得超4个赞
我相信你只需要将 FlushInterval 设置为负数
FlushInterval 指定在复制响应正文时要刷新到客户端的刷新间隔。如果为零,则不执行定期刷新。负值表示在每次写入客户端后立即刷新。当 ReverseProxy 将响应识别为流式响应,或者其 ContentLength 为 -1 时,将忽略 FlushInterval;对于此类响应,写入操作将立即刷新到客户端。
proxy := httputil.NewSingleHostReverseProxy(url) proxy.FlushInterval = -1
- 1 回答
- 0 关注
- 88 浏览
添加回答
举报
0/150
提交
取消