У меня есть Java API с Spring MVC. Я проверил конечную точку с Почтальоном, и она работала нормально (необработанное тело типа JSON). Теперь я тестировал ту же конечную точку с веб-страницы с помощью вызова jQuery ajax, и похоже, что отправляемый формат - это текст.
Это мой ajax Запрос
var jsonData = {
"username" : $("#username").val(),
"password" : $("#password").val()
};
console.log(jsonData);
$.ajax({
type: 'POST',
url: "/app/sing-in",
data: jsonData,
contentType: "application/json",
dataType: "json",
success: function(data, textStatus, jqXHR){
console.log("textStatus:" + textStatus);
console.log("jqXHR:" + jqXHR.status);
},
error: function(jqXHR, textStatus, errorThrown){
console.log("ERROR-textStatus:" + textStatus);
console.log("ERROR-jqXHR:" + jqXHR.status);
},
});
Это ошибка, которую я получаю:
timestamp: "2020-04-07T18:10:30.242+0000"
status: 400
error: "Bad Request"
message: "JSON parse error: Unrecognized token 'username': was expecting (JSON String, Number, Array, Object or token 'null', 'true' or 'false'); nested exception is com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'username': was expecting (JSON String, Number, Array, Object or token 'null', 'true' or 'false')↵ at [Source: (PushbackInputStream); line: 1, column: 10]"
path: "/app/sing-in":
Странно выглядит, что я отправляю не объект JSON в своем запросе, а простой текст.
Можно ли использовать объект javascript вместо объекта JSON? Могу ли я сделать общее преобразование c здесь?