【问题标题】:Parsing multipart response解析多部分响应
【发布时间】:2016-09-01 11:37:11
【问题描述】:

我有一个调用一个 REST Web 服务的 Java 客户端。 Web 服务接受 JSON 格式的数据并生成多部分格式的数据。我在这里设置的用于调用 Web 服务的 content-type 是 'application/json'

现在,在 java 客户端中,我必须获取响应并分离多部分响应中存在的多个文件。我使用以下代码来获得响应。

ByteArrayDataSource ds = new ByteArrayDataSource(conn.getInputStream(), "multipart/form-data;boundary=" + boundary); MimeMultipart multipart = new MimeMultipart(ds); System.out.println(multipart.getCount());

执行最后一行时,出现以下异常

javax.mail.MessagingException: Missing start boundary

我了解当它尝试计算响应中的文件时,它不知道从哪里开始和停止。那么,Web 服务是否应该设置文件分隔的边界?如果是,它是如何完成的? 如果没有,可以做什么?

【问题讨论】:

    标签: java multipartform-data multipart


    【解决方案1】:

    我认为你的界限是错误的 右边界以“--”开头,然后是一个哈希。尝试将边界参数更改为

    "--" + 边界

    看看有没有帮助。

    【讨论】:

      【解决方案2】:

      我也遇到过类似的问题,在这里找到了解决方法:https://stackoverflow.com/a/42548549/5236494

      基本上我使用 javax 邮件的 MimeMultipart 类来解析 Multipart 响应。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-07-01
        • 2011-04-11
        • 1970-01-01
        • 2021-09-30
        • 2014-04-01
        相关资源
        最近更新 更多