【发布时间】:2018-03-31 03:32:55
【问题描述】:
我有一个程序(Spring Boot),它使用 REST 服务将文件上传到服务器或任何其他给定位置。但是当我使用相同的服务时,发生了以下错误,下面是问题。
通过 REST 服务上传文件时,我收到 400() 错误,没有任何描述。此应用是 Spring Boot 应用,它使用 java-script 前端通过实现的 rest 服务上传和下载文件。
帮助解决这个问题。感谢您的帮助。谢谢。
下面是代码: JS:
document.getElementById('import2').onclick = function () {
var files = document.getElementById('selectFiles').files;
console.log(files);
if (files.length <= 0) {
return false;
}
//serverUploaded = true;
var form_data = new FormData(files.item(0));
//from new NLP
$.ajax({
type: "POST",
url: "http://localhost:8080/gsta/upload",
processData: false,
contentType: false,
async: false,
cache: false,
data: form_data,
success: function (result) {
//alert(JSON.stringify(result));
//$("#out_lexalytics").html(JSON.stringify(result));
if (result) {
if(result.statusCode == 200)
{
serverUploaded = true;
}
}
}
});
}
REST 服务:
@PostMapping("/upload")
// If not @RestController, uncomment this
@ResponseBody
public ResponseEntity<?> uploadFile(@RequestParam("data") MultipartFile uploadfile) {
logger.debug("Single file upload!");
if (uploadfile != null && uploadfile.isEmpty()) {
return new ResponseEntity("please select a file!", HttpStatus.OK);
}
try {
saveUploadedFiles(Arrays.asList(uploadfile));
} catch (IOException e) {
e.printStackTrace();
return new ResponseEntity<>(HttpStatus.BAD_REQUEST);
}
return new ResponseEntity("Successfully uploaded - " + uploadfile.getOriginalFilename(), new HttpHeaders(), HttpStatus.OK);
}
【问题讨论】:
标签: javascript java rest spring-boot file-upload