Я новичок в угловых js, поэтому, пожалуйста, несите меня.
У меня есть реализация backend rest что-то вроде этого:
@RequestMapping(value = "/myurl/url", method = RequestMethod.POST)
MessageQueueResponse getInboundQueueMessages (@RequestParam(value = "request", required = true) MessageQueueRequest request)
{
MessageQueueResponse response = messageQueueServiceImpl.searchInBoundMessageQueue(request);
return response;
}
Я использую этот код для вызова этой службы из внешнего интерфейса, но я получаю 400 Bad Request для этого:
var mydata = [
{
"A" : "data1",
"B" : "data2",
"C" : "data3"
}
];
var jsonData ;
$http({
method: 'POST',
url: 'myurl/url',
data: JSON.stringify(mydata),
headers: {'Accept': 'application/json', 'Content-Type': 'application/json'}
}).success(function(data){
this.data.store = data;
}).error(function(){
alert("error");
});
Я не могу понять, где я ошибаюсь.
Были некоторые ошибки: - Объект json выше имеет тип массива. Этого не должно быть.
Кроме того, данные не обязательно должны быть строгими. Он будет автоматически преобразован.
$http
имеет метод post
который делает очень удобной отправку данных на сервер.
$http.post('myurl/url', mydata)
.success(function(data){
this.data.store = data;
}).error(function(){
alert("error");
});
Вы можете больше узнать об этом в AngularJS: API: $ http
У меня недостаточно репутации, чтобы добавить комментарий, добавляя в качестве ответа. извиняюсь.
В блоге показано, как вы можете размещать данные JSON в базе данных Spring MVC. Ссылка на блог. Вы можете попробовать удалить JSON.stringify и напрямую отправить объект.