本文共 1474 字,大约阅读时间需要 4 分钟。
由于内容较为技术化,本文将重点介绍如何在前后端之间高效传递数组数据。以下是我们采用的技术栈以及实现方法。
前端:采用jQuery进行数据处理,通过AJAX发送数据;后端:使用Spring Boot进行数据接收和处理。
目前总结了两种实现方式,希望从大神们身上获取更多宝贵经验。
前端处理:将数组对象转换为JSON字符串,通过AJAX发送给后端。这种方式简单直观,但需要注意数据传输格式。
function array1() { let array = [ {"id": 1, "name": "张一"}, {"id": 2, "name": "张二"}, {"id": 3, "name": "张三"} ]; $.ajax({ url: "http://localhost:8080/array1", data: { userList: JSON.stringify(array) }, type: "POST", success: function (data) { alert(data); } });}
后端处理:接收前端发送的JSON字符串,直接将其作为处理对象。
@RequestMapping("/array1")public String array1(String userList) { return userList;}
前端处理:直接将数据以JSON格式发送,后端通过@RequestBody接收。
function list1() { let array = [ {"id": 1, "name": "张一"}, {"id": 2, "name": "张二"}, {"id": 3, "name": "张三"} ]; $.ajax({ url: "http://localhost:8080/list1", data: JSON.stringify(array), type: "POST", dataType: "json", contentType: "application/json", success: function (data) { alert(data); } });}
后端处理:接收JSON数组,通过@RequestBody自动转换为List或数组类型。
@RequestMapping("/list1")public Integer list1(@RequestBody Listusers) { return users.size();}@RequestMapping("/list2")public Integer list2(@RequestBody User[] users) { return users.length;}
确保前端和后端的contentType一致,建议设置为application/json
以保证数据格式一致性。
如遇到其他问题或需要更多优化方案,欢迎随时联系我进行交流和探讨。
转载地址:http://doupz.baihongyu.com/