1. 首页
  2. 主题
  3. Go问与答

通过beego看视频出现的问题

rffan · · 5645 次点击
我不想将视频放到static文件目录里对外开放,因此放了一个store目录作为用户登录可看的目录。 beego的实现方法如下: ```go fileid,err := c.GetInt("fileid") if err != nil{ logs.Error(err) c.Ctx.WriteString("找不到文件") } fmt.Println(fileid) theFilePath,err := class.GetFilepathWith(fileid) if err != nil{ logs.Error(err) c.Ctx.WriteString("找不到文件") } fmt.Println(theFilePath) data,err := ioutil.ReadFile(theFilePath) if err != nil{ logs.Error(err) c.Ctx.WriteString("找不到文件") } //c.Ctx.Output.Download("store/audi.mp4") c.Ctx.Output.Body(data) ``` 但是我发现这种实现的视频,在桌面版的chrome中是能播放的,放到微信中无法播放。 于是我又用gin来实现了,gin实现如下: ```go g := gin.Default() g.GET("/video",func(c *gin.Context){ c.File("D:/codes/go/src/jingcheng/store/audi.mp4") }) g.Run(":8081") ``` gin 实现是能够正常播放的,包括微信。 所以现在的问题就是我想解决beego的问题,因为毕竟方法什么的都依赖beego写了,现在转投gin时间上有点来不及。请小伙伴们说说看该怎么改进让beego加载的视频能在微信上正常查看
试着参照着gin的实现用beego来搞,貌似成了,直接使用http包自带的ServeFile就OK了 代码如下: ```go http.ServeFile(c.Ctx.ResponseWriter,c.Ctx.Request,theFilePath) ``` 搞定搞定,如有小伙伴有更高明的解决方案,请回复
#1
更多评论
你好:能否完整共享一下代码吗?信息比较零散,还不是很懂
#2

用户登录

没有账号?注册

今日阅读排行

    加载中

一周阅读排行

    加载中