前端 JavaScript 发起 POST 请求,Java 端接收 List<A> 和 bizID 数据示例
前端 JavaScript 发起 POST 请求
const data = {
'list': [
{ 'fileid': 1, 'filename': 'file1' },
{ 'fileid': 2, 'filename': 'file2' },
{ 'fileid': 3, 'filename': 'file3' },
],
'bizID': '123456',
};
fetch('/api/upload', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify(data),
}).then(response => {
console.log(response);
}).catch(error => {
console.error(error);
});
Java 端提供服务
@PostMapping("/upload")
public void upload(@RequestBody Map<String, Object> data) {
List<Map<String, Object>> list = (List<Map<String, Object>>) data.get("list");
String bizID = (String) data.get("bizID");
List<A> aList = new ArrayList<>();
for (Map<String, Object> item : list) {
A a = new A();
a.setFileid((Integer) item.get("fileid"));
a.setFilename((String) item.get("filename"));
aList.add(a);
}
// TODO: 处理业务逻辑
}
说明:
- 前端代码使用
fetchAPI 发送 POST 请求,并将数据以 JSON 格式发送到/api/upload接口。 - Java 端使用
@PostMapping注解标记处理 POST 请求的接口。 @RequestBody注解将请求体映射到Map<String, Object>对象。- 代码示例中,Java 端将接收到的
Map<String, Object>数据转换为List<A>对象,其中A类包含fileid和filename属性。 - 代码示例仅展示数据接收和转换过程,实际业务逻辑需要根据实际情况进行编写。
原文地址: https://www.cveoy.top/t/topic/nALT 著作权归作者所有。请勿转载和采集!