Egg-static 访问音视频(静态资源),服务端断开请求,怎么处理?
发布于 9 个月前 作者 jinxc 1368 次浏览 来自 问答

使用egg-static,访问图片资源正常,但是访问音视频文件(5M左右)报错,“A client (undefined:NaN) error [EPIPE] occurred: write EPIPE”,GitHub上提问仅告知是“服务端断开了请求”,请问有遇到类似问题的小伙伴吗?该怎么配置?

5 回复

egg-static 依赖 koa-static-cache,而这个是 koa-static-cache 的 bug,详见:https://github.com/koajs/static-cache/issues/1 问题原因:koa-static-cache 没有解析请求头的 range 字段,且响应头也没有 range 字段,不符合 RFC7233规范,导致浏览器提前断开了连接。目前的解决办法就是在 koa-static-cache 前面加一个中间件 koa-range

@jinxc 官方 bug 已修,版本 egg-static@>=v2.1.0 和 egg-static@>=v1.5.0

不用管版本,直接重新安装下依赖即可(不要锁版本!),我们都是通过 ^ 引入的,egg-staticegg 的子依赖,开发者不要自行引入。

回到顶部