当前位置: 首页 > 知识库问答 >
问题:

找不到多部分/表单数据的邮件正文读取器 - 不支持的媒体类型(415) 错误

邓俊英
2023-03-14

下面是我的webservice方法的签名,该方法接受带有附件的content-type=multipart/form-data

@POST  @Path("/saveimg")    
    @Consumes(MediaType.MULTIPART_FORM_DATA)
    public Response saveAttachment( @FormDataParam("files") InputStream fileInputStream,
             @FormDataParam("files") FormDataContentDisposition contentDispositionHeader) {

我得到以下错误:

SEVERE:Java类com.sun.jersey.core.header的消息体读取器。FormDataContentDisposition和Java类型类com.sun.jersey.core.header。FormDataContentDisposition和MIME媒体类型多部分/表单数据;boundary=----找不到WebKitFormBoundaryiNkfu0uRssIuZMPX。与MIME媒体类型兼容的已注册邮件正文读取器为:/-

共有2个答案

李疏珂
2023-03-14

无论回答得多晚,我都通过使用泽西2框架解决了我的问题。泽西版本1不适合我。除此之外,所需的库是:

    jersey-media-multipart-2.25

    mimepull-1.9.7

注意:我使用了杰克逊提供商-新泽西-媒体-JSON-杰克逊-2.5.1

很容易,可以从铬邮递员测试它

   >> method - PUT, POST
   >> Give Path(URL) of your resource method
   >> Body -- form-data  
   >> key -- should match with @@FormDataParam argument
   >> Choose File -> browse but make sure it's **File** type not Text
   >> Yeah, Hit SEND 
耿永寿
2023-03-14

尝试删除FormDataContentDisposition,我删除了它,现在没有415个错误……但我必须找到其他方法来获取所需的信息。

我的文件在这里:@FormDataParam(“文件”)输入流文件流。

我试着这样读文件:

final Reader Reader = new InputStreamReader(fileStream);string text = charstreams . tostring(reader);

但不是我的最终解决方案…我正在寻找其他解决方案…希望我能有所帮助。

 类似资料:
  • 我必须做的是,我必须在给定的URL中发布JSON数据,其中JSON看起来像 和我的功能 当我张贴它的时候;我得到一个错误 “远程服务器返回错误:(415)不支持的媒体类型。” 有人知道吗;我错在哪里?

  • 问题内容: 自数小时以来,我一直在尝试纠正http错误,但它仍显示不支持的页面。我在邮递员中添加标题。 这是我的Java代码 这是我的档案 问题答案: 通过和如何在响应流和请求流之间对对象进行序列化和反序列化。 将会发生的是,将从提供者的注册表中进行搜索,以查找可以处理的媒体类型。如果找不到,则Jersey无法处理该请求,并将发送415不支持的媒体类型。通常,你还应该在服务器端记录一个异常。不知道

  • 我已经创建了一个示例web服务来进行post调用。 我使用的是Jersey JAX-RS和Maven。

  • 我知道已经有一个类似的问题,但它没有解决上述错误。 这是我在API控制器中的PUT操作,在中运行良好: 以下是我的网页上的代码: HTML 打字稿 我的服务是: 我还使用了尝试上述问题的答案,我将我的文件附加到中,但不幸的是,同样的错误。如果媒体类型中没有任何设置,如何修复此问题?

  • 问题内容: 我正在使用JSON请求调用REST服务,并且它以错误响应。 请求内容类型设置为。 如果我在请求中不包含JSON对象,则效果很好。我正在使用JSON库。 我尝试使用几个不同的库,但这没什么区别。 有人可以帮我解决这个问题吗? 这是我的代码: 的值为: 问题答案: 不确定原因,但是从中 删除行解决了该问题。