Есть ли возможность использовать App_Browsers для определения поддержки API-интерфейса файлов HTML5? - PullRequest
2 голосов
/ 14 октября 2011

Используя 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 классом .

Мой вопрос:

Можно ли вывести способность браузера поддерживать API файлов HTML5 напрямую из возможностей браузера?

1 Ответ

3 голосов
/ 15 октября 2011

Возможно, это не совсем то, о чем вы спрашиваете, но для вашего варианта использования может пригодиться просмотр библиотеки javascript, называемой Modernizr (http://www.modernizr.com/docs/). Это, конечно, проверка на стороне клиента, а не на стороне сервера.

Он способен обнаруживать довольно много функций HTML5.

...