1.vue前端使用axios发送请求和接收数据(均采用json数据格式)
process(){
var that = this
this.$axios.request({
url:'http://localhost:8088' + '/task',
method:'POST',
data:{
"startDate":that.startDate,
"endDate":that.endDate,
"videopath":that.videopath,
"type":"1"
},
responseType: 'json'
}).then(function(response){
console.log('数据:', response)
console.log("success!")
})
}
2.springboot中controller层中对请求的处理和结果异步的返回
@PostMapping("/task")
@CrossOrigin
public ResponseEntity<Object> create_task(@RequestBody JSONObject jsonObject) throws ParseException {
String startDate = jsonObject.getString("startDate");
String endDate = jsonObject.getString("endDate");
String videoPath = jsonObject.getString("videopath");
String type = jsonObject.getString("type");
String dirPath = "Desktop/" + videoPath;
List<File> files = getFileList(dirPath, "mp4");
String format = "yyyy-MM-dd";
SimpleDateFormat sdf = new SimpleDateFormat(format);
Date sDate = sdf.parse(startDate);
Date eDate = sdf.parse(endDate);
System.out.println(sDate);
Task task = new Task();
for (File file : files) {
//根据时间读取文件
long lastModified = file.lastModified();
Date fileDate = new Date();
fileDate.setTime(lastModified);
if(fileDate.after(sDate) && fileDate.before(eDate)){
String task_id = getuuid();
task.setSource(file.getName());
task.setState("no");
task.setTask_type(type);
//System.out.println(JSON.toJSONString(task.toString()));
cacheService.addHashCache("1",task_id, task);
}
}
JSONObject res =new JSONObject();
res.put("1","ok");
return new ResponseEntity<>(res, HttpStatus.OK);
}