Maneira programática de verificar se o navegador do cliente suporta métodos PUT / DELETE

Existe uma maneira de verificar se um navegador cliente suporta métodos PUT ou SEARCH para uso com solicitações JQuery e AJA

Os métodos HTML5 PUT / DELETE não estão funcionando no Chrome?s métodos PUT, DELETE, HEAD, etc estão disponíveis na maioria dos navegadores da we

Tenho o seguinte código ePUT não aparece no servidor para mim no Chromium e no Chrome ... Gostaria de saber, se o PUT não é suportado pelo navegador, como alterá-lo para uma solicitação POST ... para compatibilidade com versões anteriores

function do_data(url, action, query) {
try {
    if ($.browser.msie) {
        var xdr = new XDomainRequest();
        if (query !== null) {
            console.log(query);
            xdr.open(action, url + '?' + $.param(query));
        } else {
            xdr.open(action, url);
        }
        xdr.onload = function() {
            var data = $.parseJSON(this.responseText);
            show_data(data);
        };
        xdr.send();
    } else {
        if (query !== null) {
            $.ajax({
                url: url,
                data: query,
                type: action,
                success: function(data) {
                    console.log(data);
                },
                error: function(jqXHR, textStatus, errorThrown) {
                    console.log(textStatus);
                }
            });
        } else {
            console.log(query);
            $.ajax({
                url: url,
                type: action,
                success: function(msg) {
                    console.log(data);
                }
            });
        }
    }
} catch (e) {}
}

Usando o código acima, se eu usar "PUT" no Chromium / Chrome,error: function(jqXHR, textStatus, errorThrown) imprimirá simplesmenteerror.

No lado do servidor, vejo o REQUEST_METHOD: OPTIONS e não PUT.

Basta confirmar, para quem se deparar com isso ... não existe uma maneira programática

questionAnswers(1)

yourAnswerToTheQuestion