【发布时间】:2020-10-18 21:46:04
【问题描述】:
我使用弹簧靴在购物网站上工作并做出反应。当我尝试创建一个新产品时,我会填写一些输入和图像。但是在提交时我得到 400 错误代码。错误:已解决 [org.springframework.http.converter.HttpMessageNotReadableException:JSON 解析错误:无法从 START_OBJECT 令牌中反序列化 java.util.ArrayList<org.springframework.web.multipart.MultipartFile> 的实例;嵌套异常是 com.fasterxml.jackson.databind.exc.MismatchedInputException: 无法从 START_OBJECT 令牌中反序列化 java.util.ArrayList<org.springframework.web.multipart.MultipartFile> 的实例
在 [来源:(PushbackInputStream);行:1,列:1095](通过引用链:com.shopping_app.model.request.CreateProductRequest["images"])]
-
在反应中
upload = () => { const formData = new FormData() for (const image of this.state.images) { formData.append('image', image) } formData.append('product', { categories: this.state.categories, brand: this.state.brand, colors: this.state.colors, sizes: this.state.sizes, name: 'product 1', price: 100, description: 'description', }) Axios.post('http://localhost:7070/test', { productRequest: { categories: this.state.categories, brand: this.state.brand, colors: this.state.colors, sizes: this.state.sizes, name: 'product 2', price: 100, description: 'description', }, images: formData, }).then((res) => console.log(res.data))}
-
在 Spring Boot 中
@PostMapping(value = "/test") public void test(@RequestBody CreateProductRequest createProductRequest) { productService.createProduct(createProductRequest); } CrateProductRequest public class CreateProductRequest { private ProductRequest productRequest; private List<MultipartFile> images; ... constructors, getters and setters }感谢您的帮助
【问题讨论】:
标签: reactjs spring-boot file-upload