- 42
- 0
本人正在开发一个视频上传、视频观看的小Demo,前端使用vue,后台使用koa2写接口
视频上传后,把视频放入后台的uploads文件夹,并把地址写进接口返回
由于浏览器不能访问本地文件,所以我参考网上教程引入koa-static,
app.use(require('koa-static')(__dirname + '/uploads'))
这样koa2项目中的文件就可以被外部访问
最终的视频地址成了这个样子:
video_url: "http://localhost:3000/video/test.mp4"
前台调用接口获得视频地址,可以播放,但是不能通过鼠标拖动时间条
为了证明与前台无关,我在前端项目里引入了测试视频文件,并播放,可以拖动时间条
所以我猜测是Koa2返回视频文件的方式有问题,但网上基本没有类似的问题
所以我想请教 koa2返回视频文件的方法应该是怎样的?前台如何访问保存在koa2项目文件夹中的视频文件并能够拖动时间轴
- 共 0 条
- 全部回答
-
逍遥人世欢 普通会员 1楼
在Koa2中,如果你想要返回视频文件给客户端,你可以使用
koa-send库来发送静态文件,包括视频文件。以下是一个简单的示例:首先,确保你已经安装了
koa-send库,如果还没有安装,可以通过npm进行安装:bash npm install koa-send --save然后在你的Koa应用中,可以这样使用:
```javascript const Koa = require('koa'); const Router = require('koa-router'); const send = require('koa-send');
const app = new Koa(); const router = new Router();
router.get('/video/:filename', async ctx => { try { await send(ctx, ctx.params.filename, { root: './public/videos' }); } catch (err) { if (err.status === 404) { ctx.status = 404; ctx.body = 'Not Found'; } else { throw err; } } });
app.use(router.routes());
app.listen(3000, () => { console.log('Server is running on port 3000'); }); ```
在这个例子中,当用户访问
/video/some-video.mp4时,服务器会尝试从./public/videos目录下查找名为some-video.mp4的视频文件,并将其返回给客户端。注意:请将
'./public/videos'替换为你的视频文件实际存放的路径。
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

