gpt4 book ai didi

asp.net-mvc - 大型视频文件的 MVC ActionResult

转载 作者:行者123 更新时间:2023-12-03 17:54:55 25 4
gpt4 key购买 nike

我在网站上使用 ASP.NET MVC 4。该网站为我们的集团管理在线事件,并为注册用户提供访问在线资料、网络事件文件和教学视频的权限。我已经构建了一个用于上传和管理视频的系统,现在我需要构建 Controller 操作以将视频文件发送到网页。我们使用 VideoJS 作为查看器,我现在对此非常满意。我们需要维护文件的安全性,因此仅将文件放在 Web 服务器上的某个位置似乎对我们不起作用。

我的主要问题是将文件返回给查看器的好方法是什么?我习惯于使用 ActionResult 和 JSONResult 类,但它们似乎不太适合视频文件。这些文件可能非常大,有时高达 GB 或更多。我看到了 MVC FileResult 类、FileStreamResult 类和 FileContentResult 类。我应该使用哪一个以及在构建它时我应该考虑哪些其他注意事项?

我感谢您的帮助。

道格

最佳答案

您绝对不应该将整个视频作为对观众的回应发送,因为他们会等待很长时间才能下载。您需要将其流式传输给他们。我想你需要某种从 Controller 返回的字节流。

像 YouTube 这样的地方通过 Flash 提供他们的视频是有原因的——因为质量和速率可以很容易地控制,并且它提供了一定程度的复制保护(尽管它不是万无一失的)。我刚刚做了一个快速的谷歌搜索,发现了这个:

http://www.longtailvideo.com/jw-player/download/

可能有用,但我个人不能保证!

显然,Razor 提供了它自己的视频文件处理功能,您可能会发现它很有用:

http://www.asp.net/web-pages/tutorials/files,-images,-and-media/10-working-with-video

此外,HTML5 支持视频流(我相信你知道 VideoJS 使用它):

http://www.w3schools.com/html/html5_video.asp

关于asp.net-mvc - 大型视频文件的 MVC ActionResult,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12873882/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com