Ainsi, selon le Documents sur jQuery Ajax il sérialise les données sous la forme d'une chaîne de requête lors de l'envoi des demandes, mais la définition de l'option processData:false
devrait me permettre d'envoyer du JSON dans le corps. Malheureusement, j'ai du mal à déterminer, premièrement, si cela se produit et, deuxièmement, à quoi ressemble l'objet qui est envoyé au serveur. Tout ce que je sais, c'est que le serveur n'analyse pas ce que j'envoie.
Lorsque vous utilisez client http pour afficher un objet littéral {someKey:'someData'}
cela fonctionne. Mais lorsque vous utilisez jQuery avec data: {someKey:'someData'}
il échoue. Malheureusement, lorsque j'analyse la demande dans Safari, il est indiqué que la charge utile du message est la suivante [object Object]
... super... et dans Firefox le message est vide...
Lorsque l'on enregistre le contenu du corps du texte du côté Java, on obtient littéralement [object Object]
alors comment envoyer de VRAIES données JSON ?
Quelqu'un a-t-il fait l'expérience d'un service Java sérialisant des données JSON dans le corps de la requête, la requête étant envoyée par jQuery ?
BTW voici la requête $.ajax complète :
$.ajax({
contentType: 'application/json',
data: {
"command": "on"
},
dataType: 'json',
success: function(data){
app.log("device control succeeded");
},
error: function(){
app.log("Device control failed");
},
processData: false,
type: 'POST',
url: '/devices/{device_id}/control'
});