JavaSpringWebFlux多部分文件上传

uqdfh47h  于 2021-07-23  发布在  Java
关注(0)|答案(1)|浏览(308)

我试着用一张图片做一个简单的post请求。但它不起作用。
我的html发布表单数据(多部分/表单数据):

book[0].cover = 123.jpg;  <--- upload file image
book[0].title = "title 123";
book[0].author = "123"

book[1].cover = abc.jpg;
book[1].title = "title abc";
book[1].author = "abc"

restapi图像

curl -X POST http://127.0.0.1/book/postCreate \
    -H 'Content-Type: multipart/form-data' \
    -d 'book%5B0%5D.file=[$file.30378169-jpg]&book%5B0%5D.title=title%20123&book%5B0%5D.author=author%20123&book%5B1%5D.file=[$file.30378190-jpg]&book%5B1%5D.title=title%20abc&book%5B0%5D.author=author%20abc'

我的控制器方法设置如下:

public Mono<ServerResponse> postCreate(ServerRequest request) {
    Flux<Book> book = request.bodyToFlux(Book.class);  // error
    // How can I get the data of the form ?
}

class Book {
    FilePart cover;
    String title;
    String author;
}

如何获取表格的数据?

vwhgwdsa

vwhgwdsa1#

我并不擅长java,但是当我进入VisualStudio代码并输入它时,它会给我一些错误。

book[0].cover = 123.jpg;  <--- uplaod file image
book[0].title = "title 123";
book[0].author = "123"

book[1].cover = abc.jpg;
book[1].title = "title abc";
book[1].author = "abc"

首先,上传拼写错误,这可能就是原因。当我在visualstudio代码中单击单词“file”时,它只会变为“file”而不是“file”。我认为资本化是这里的问题,但我不擅长java。
就像我说的,我对java不太流利,因为我编写python代码,有时编写javascript代码,但我从未见过这样的错误。

相关问题