在Web開發中,經常需要通過controller來接收前端傳來的數據。如果數據是一個json數組,我們該如何接收呢?
public ResponseEntity<String> receiveJsonArray(@RequestBody List<MyModel> myModels) { // 處理代碼 }
上述代碼中,我們可以看到接收到的參數是一個List<MyModel>對象,其中MyModel是我們自己定義的一個Java類。
在前端發送請求時,需要將json數組轉換成json字符串并設置請求頭。
var data = [ { "name": "Tom", "age": 18 }, { "name": "Jerry", "age": 20 }, { "name": "Lucy", "age": 19 } ]; var jsonData = JSON.stringify(data); // 構建請求頭 $.ajax({ url: '/api/receiveJsonArray', type: 'POST', contentType: 'application/json;charset=utf-8', data: jsonData, success: function(result) { console.log(result); } });
上面的代碼中,我們通過JSON.stringify()方法將data數組轉換成json字符串,再將其作為請求參數通過POST方法發送到后端。
這樣,我們就可以通過controller接收到前端傳來的json數組數據了。