有没有机会使用App_Browsers来检测对HTML5 File API的支持?

时间:2011-10-14 19:08:30

标签: c# asp.net html5 file-upload httpbrowsercapabilities

使用HTML5 File API上传文件,我目前正在使用一些硬编码检查支持它们的浏览器,具体取决于用户代理字符串:

internal bool IsHtml5FileUploadCapable
{
    get
    {
        var browser = Request.Browser;

        var n = browser.Browser.ToLowerInvariant();
        var major = browser.MajorVersion;
        var minor = browser.MinorVersion;

        return
            n.Contains(@"chrome") && major >= 6 ||
            n.Contains(@"ie") && major >= 10 ||
            n.Contains(@"firefox") && (major >= 3 && minor > 6 || major >= 4) ||
            n.Contains(@"opera") && (major >= 11 && minor >= 5 || major >= 12) ||
            n.Contains(@"safari") && major >= 4;
    }
}

我喜欢使用的内置“App_Browsers”功能与HttpBrowserCapabilities class结合使用。

我的问题:

是否可以推断浏览器直接从浏览器功能支持HTML5文件API的能力?

1 个答案:

答案 0 :(得分:3)

它可能不完全是您所询问的内容,但查看名为Modernizr(http://www.modernizr.com/docs/)的javascript库可能对您的用例有用。当然,这是客户端检查,而不是服务器端检查。

它能够检测到相当多的HTML5功能。