- What version of Go and beego are you using (
bee version
)? bee :1.4.1 beego :1.6.1 Go :go version go1.6 windows/amd64 - What operating system and processor architecture are you using (
go env
)? - What did you do?
在网页上添加了一个标签
<a href="/static/foo.apk">下载测试</a>
大小约8m的文件 然后下载测试 ,直接使用chrome下载的得到的文件 是没有问题的。 通过手机访问web页面的时候 下载获得的文件就变了 md5码对不上 A complete runnable program is good. - What did you expect to see?
- What did you see instead?
[beego]使用static下载文件出错
回答
这个问题解决了吗?我现在也遇到同样的问题。
静态文件下载的时候会采用gzip压缩,你是不是打开了这个gzip压缩?
解决的方法没找到,跳过的方法有两个
1,使用nginx静态代理
2 添加控制器路由 具体代码
` < a href='/download'>
beego.Router('/download',MainControl{}, '"*:Downfoo"')
func (this *MainControl)Downfoo() { this.Ctx.Output.Download("static/forestall.apk","foo.apk")
} `
@astaxie ,我没有配置gzip相关的参数,也不知道怎么配置。
@lyb124553153 我是需要下载静态目录下面的所有文件,里面有图片和视频,目前仅仅在main.go里面做了如下配置 beego.SetStaticPath("/adfiles", "adfiles/") 我会测试一下你推荐的第二种方法,但是如果是目录下所有文件下载还不确定怎么写!
可以使用 http://120.25.72.71:8080/adfiles/org_24/MiddleVideo/fangchang.mp4 测试,目前发现只有google浏览器断点续传没有问题,迅雷、火狐下载一下,暂停一下,再继续下载,视频就会花,说明数据损坏了。
谢谢二位了!
@astaxie 我也遇到了这样的问题 我发布apk应用是直接在放在 /static/zwtx.apk ,手机任何浏览器下载都会无法安装,文件大小一致,但不能解析安装。
没有使用gzip的配置,原来使用beego1.1 最近升级为最新版本出现的,测试beego1.1版本没有这样的问题
@pengyixing 如果是某个目录下的所有apk文件该怎么写呢?