gpt4 book ai didi

java - 如何在 Jersey jax-rs 中接收 2 个二进制文件和 JSON?

转载 作者:行者123 更新时间:2023-12-01 10:42:36 25 4
gpt4 key购买 nike

我需要构建一个可以接收 2 个二进制文件(每个大约 100k)和一些元数据(最好是 json 格式)的服务。

found this ,但它似乎只为其中一个部分提供一个输入流。但我需要两个..那么该怎么办?

最佳答案

你有几个选择

  1. 只需添加具有不同部分注释的另一个参数

    @POST
    @Consumes("multipart/form-data")
    public Response post(@FormDataParam("file1") InputStream file1,
    @FormDaraParam("file2") InputStream file2) {

    }
  2. 这些部件可以具有相同的部件名称,因此您可以这样做

    @POST
    @Consumes("multipart/form-data")
    public Response post(@FormDataParam("file") List<FormDataBodyPart> files) {
    for (FormDataBodyPart file: files) {
    FormDataContentDisposition fdcd = file.getFormDataContentDisposition();
    String fileName = fdcd = getFileName();
    InputStream is = file.getValueAs(InputStream.class);
    }
    }
  3. 您可以自己遍历整个多部分 body

    @POST
    @Consumes("multipart/form-data")
    public Response post(FormDataMultiPart mulitPart) {
    Map<String, List<FormDataBodyPart>> fields = multiPart.getFields();
    }

另请参阅:

关于java - 如何在 Jersey jax-rs 中接收 2 个二进制文件和 JSON?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34367344/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com