Existe-t-il un moyen de voir si un navigateur client prend en charge les méthodes PUT ou SEARCH pour une utilisation avec JQuery & requêtes AJAX?Méthode permettant de voir si le navigateur client prend en charge les méthodes PUT/DELETE
- HTML5 PUT/DELETE methods not working in Chrome?
- Are the PUT, DELETE, HEAD, etc methods available in most web browsers?
J'ai le code suivant et PUT
ne semble pas sur le côté serveur pour moi dans Chrome et Chrome ... Je voudrais savoir, si PUT est pas pris en charge par le navigateur, comment le changer à une requête POST ... pour la compatibilité ascendante
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) {}
}
en utilisant le code ci-dessus, si je l'utilise « P UT "sur Chromium/Chrome, error: function(jqXHR, textStatus, errorThrown)
va imprimer simplement error
.
Sur le serveur, je vois REQUEST_METHOD: OPTIONS et non PUT.
Juste pour confirmer, pour tous ceux qui vient à travers cette ... il n'y a pas une façon programmatique
Vous pouvez toujours mettre en place un simple service "HTTP echo", qui répondrait à chaque requête avec un 200 OK retournant la requête complète (en-têtes et tout) dans le corps. – Szocske