使用.net ashx和querystring在浏览器中嵌入mp4视频

本文关键字:mp4 视频 浏览器 net ashx querystring 使用 | 更新日期: 2023-09-27 18:20:24

我的任务是使用.net ashx,以便能够通过web浏览器向用户提供视频
视频分别存储在同一服务器上的另一个驱动器中。F: ''视频。我已经成功地让wmv视频工作,但似乎无法播放mp4格式。我尝试过多种上下文类型——video/mpeg、video/x-fla、video/mp4。当我使用video/x-ms-wmv播放wmv文件时,Windows媒体播放器会弹出并播放视频。然而,有人告诉我,我不能使用wmv,因为并非所有用户都能使用Windows Media Player。

有人能告诉我代码有什么遗漏/错误吗?这样我就可以播放mp4视频了?

在我的web.config中,我有以下内容:

<urlMappings enabled="true">
  <add url="~/Video.aspx" mappedUrl="~/VideoHandler.ashx"/>
</urlMappings>

我有一个.aspx文件,其中有一个超链接,可以将用户引导到视频:

<asp:HyperLink ID="Hyperlink2" runat="server" NavigateUrl="~/Video.aspx?File=WRF" Target="_parent">WRF<asp:HyperLink>

我的.ashx文件有以下内容:

public void ProcessRequest(HttpContext context)
{
    string file = context.Request.QueryString["file"];
    if (file != String.Empty)
    {
        context.Response.ContentType = "video/mp4";
        switch (file)
        {
            case "WRF":
                context.Response.WriteFile("f:''Videos''WRF.mp4");                       
                break;
            case "INTRO":
                context.Response.WriteFile("f:''Videos''Intro.mp4");
                break;
        }
    }
    else
    {
        context.Response.ContentType = "text/plain";
        context.Response.Write("No file requested");
    }
}

使用.net ashx和querystring在浏览器中嵌入mp4视频

哇,在哪里乞讨。。。

你需要把你自己和你的代码仅仅看作一个盘子,你在上面提供一个要在播放器中播放的视频文件。

这里最重要的问题是:你的MP4视频的格式到底是什么?ContentType或文件扩展名不会告诉我们任何有关编码的信息。

很可能你的用户群无法播放你的特定视频片段。

所以。。。发生了什么?出现了什么,是不是出现了错误?