2

使用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

我的问题:

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

4

1 回答 1

3

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

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

于 2011-10-14T23:22:31.383 回答