簡體   English   中英

如何在AngularJS和Spring MVC中發布復雜的JSON對象

[英]How to post complex json object in angularjs and spring mvc

我想在angular和spring mvc中發布復雜的json對象。 所以寫這段代碼。 對於簡單的對象(例如客戶數據),它可以正常工作。 但對於復雜對象不起作用,並顯示錯誤“ 400錯誤請求”。 籃子對象可能不止一個。
我在Java中的對象

public class Data {
   private List<BasketData> baskets;
 }
  public class BasketData {
    private CustomerData customer;
 }

 public class CustomerData {
  private String name;
  private String phone;
  private String mobile;
  private String address;
}

和彈簧控制器

 public @ResponseBody List<Data> save(@RequestBody List<Data> data){
 }

在html頁面中,我通過ng-reeat創建表單。

      <div ng-repeat="item in items track by $index">
         <input ng-model="item[$index].baskets[$index].customer.phone"/>
         <input ng-model="item[$index].baskets[$index].customer.name"/>
         <input ng-model="item[$index].baskets[$index].customer.mobile"/>
         <input ng-model="item[$index].baskets[$index].customer.address"/>
      </div>

並在angularjs控制器中創建此json對象

  var item = [
    {
        baskets: [
            {
                customer:
                    {
                        phone: "",
                        name: "",
                        mobile: "",
                        address: ""
                    }
            }
        ]
    }
];
 $scope.items.push(item);
 $http.post('/post', $scope.items);

當我有復雜的json時,我也面臨着同樣的問題

@RequestMapping(method = RequestMethod.POST, value = "/submitReturn", consumes = MediaType.APPLICATION_JSON_VALUE)

在客戶端調用該方法的地方

headers.add("Accept", MediaType.APPLICATION_JSON_VALUE);
headers.add("Content-Type", MediaType.APPLICATION_JSON_VALUE);

要么

$.ajax({
    url: 'your url',
    type:"post",
    data : json,
    dataType: 'json',
    contentType: "application/json",
    success: function(response, textStatus, jqXHR){}
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM