En complément, pour ceux qui pourraient rencontrer le même problème que le mien, j'utilise $.ajax
pour publier des données de formulaire sur le serveur et j'ai également eu l' 400
erreur au début.
Supposons que j'ai une variable javascript,
var formData = {
"name":"Gearon",
"hobby":"Be different"
};
N'utilisez pas de variable formData
directement comme valeur de clé data
comme ci-dessous:
$.ajax({
type: "post",
dataType: "json",
url: "http://localhost/user/add",
contentType: "application/json",
data: formData,
success: function(data, textStatus){
alert("Data: " + data + "\nStatus: " + status);
}
});
Utilisez plutôt JSON.stringify pour encapsuler les éléments formData
ci-dessous:
$.ajax({
type: "post",
dataType: "json",
url: "http://localhost/user/add",
contentType: "application/json",
data: JSON.stringify(formData),
success: function(data, textStatus){
alert("Data: " + data + "\nStatus: " + status);
}
});
Quoi qu'il en soit, comme d'autres l'ont illustré, l'erreur est due au fait que le serveur n'a pas pu reconnaître la requête provoquant une syntaxe mal formée, je soulève simplement une instance à l'entraînement. J'espère que cela serait utile à quelqu'un.
Roman
, ils ont juste besoin de vous payer plus :)