Angular新手在这里。
在我的角度项目中,我需要提供文件上传功能。 我正在使用PrimeNg FileUpload,因为它看起来很容易使用。我可以通过指定PrimeNG教程中提供的必要属性来使其工作。
问题是我使用Angular 2以及Spring MVC和rest API。 虽然我能够上传文件,但该功能完全在客户端。我无法将文件对象传递给我的spring控制器,并且能够从那里操作它。
有谁能告诉我如何将上传的文件从PrimeNg文件上传到我的弹簧控制器?提前谢谢你:D :))
答案 0 :(得分:0)
文件上传的客户端实现无关紧要,服务器只看到multipart/form-data
请求。
我们正在使用这种方法:
@RequestMapping(value = "/your/path",
method = RequestMethod.POST,
produces = MediaType.APPLICATION_JSON_VALUE,
consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
@ResponseStatus(HttpStatus.CREATED)
public YourResponseRepresentation uploadContent(@RequestParam("file") MultipartFile file) {
// You can now access the file's input stream, file name, ...
}
有关可以使用的内容的详细信息,请参阅org.springframework.web.multipart.MultipartFile
(部分操作Spring MVC)。我们正在使用 Apache Commons FileUpload 实现来完成底层部分的繁重工作,并为您提供简单的流读取。
只需添加相应的commons-fileupload
版本作为依赖项,您就可以开始......