Como um complemento, para aqueles que podem encontrar o mesmo problema que o meu, estou usando $.ajax
para postar dados do formulário no servidor e também obtive o 400
erro no início.
Suponha que eu tenho uma variável javascript,
var formData = {
"name":"Gearon",
"hobby":"Be different"
};
Não use a variável formData
diretamente como o valor da chave data
como abaixo:
$.ajax({
type: "post",
dataType: "json",
url: "http://localhost/user/add",
contentType: "application/json",
data: formData,
success: function(data, textStatus){
alert("Data: " + data + "\nStatus: " + status);
}
});
Em vez disso, use JSON.stringify para encapsular o formData
seguinte:
$.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);
}
});
De qualquer forma, como outros ilustraram, o erro ocorre porque o servidor não pôde reconhecer a solicitação que causava sintaxe malformada; estou apenas levantando uma instância na prática. Espero que seja útil para alguém.
Roman
, eles só precisam de pagar mais :)