AngularJS: передача сложных данных JSON с использованием $ http.post
У меня проблемы с передачей сложного объекта json в angularjs с помощью $ http.post. Я получаю сообщение об ошибке 400 неверных запросов от сервера, в котором говорится, что запрос был синтаксически неверным. Я считаю, что это как-то связано с массивом, так как он проходит нормально, когда я его не включаю.
JSON я прохожу.
{
customer: {
firstName: "John",
lastName: "Doe",
street: "1234 South Dr",
city: "Detroit",
state: "MI",
zip: "12345",
phone: "123-321-1234",
email: "[email protected]"
},
order: {
orderDate: "06-16-2015",
registerNum: "1",
transactionNum: "7820",
deliveryStatusID: 1,
notes: "Hold order until July",
items: [
{skuID: "1234568",
skuDescription: "Order item 1",
qty: "4",
itemStatusID: 1,
itemStatusDescription: "Backorder"
},
{skuID: "7387491",
skuDescription: "Order item 2",
qty: "1",
itemStatusID: 1,
itemStatusDescription: "Flagged"
}
]
}
}
угловая сервисная функция
this.addOrder = function(new_order) {
return $http.post(base + "/add", new_order);
};
Spring MVC контроллер метод
@RequestMapping(value="/add", method=RequestMethod.POST)
public void addOrder(@RequestBody CustomerOrder customerOrder) {
System.out.println("----CUSTOMER-INFO----");
System.out.println(customerOrder.getCustomer().getFirstName());
System.out.println(customerOrder.getCustomer().getLastName());
System.out.println("");
System.out.println("----ORDER-INFO----");
System.out.println(customerOrder.getOrder().getOrderID());
System.out.println(customerOrder.getOrder().getOrderDate());
}
Кажется, проблема возникает, только когда я передаю массив items в json. Я передал тот же объект json без массива items, и он работает нормально. Формат json отправляется в том же формате, который возвращается всякий раз, когда я получаю заказ с помощью моего метода обслуживания angularjs, так что я действительно не уверен, где я ошибаюсь.
Если мне нужно предоставить больше кода, пожалуйста, дайте мне знать. Я ценю любые усилия, чтобы помочь мне.
Спасибо.
Джейсон