【问题标题】:multipart form generating a malformed packet多部分形式生成格式错误的数据包
【发布时间】:2012-10-02 20:18:28
【问题描述】:

我正在尝试在表单提交中包含电子邮件附件。我的后端有一个使用 jersey 的 tomcat 服务器来接收 RESTful 调用。

当我尝试使用此表单生成帖子时(所有样式都已被剥离)

<form  name="composeMailForm" enctype="multipart/form-data" method="POST" action="/myTarget">
    <input id="mailTo" type="text" name="to" class="span12" />                                                        
    <input type="text" name="subject" class="span8" />
    <textarea name="body" rows="5" class="span8">-</textarea>
    <input type="file" name="file" size=100 />
    <button type="submit" >Send</button>
</form> 

我收到了 405 回复。

我在后端的函数定义是

@Path("/myTarget") @POST @Consumes(MediaType.MULTIPART_FORM_DATA) public Response sendMail( @FormDataParam("to") String recipients, @FormDataParam("subject") String subject, @FormDataParam("body") String body, @FormDataParam("file") File loadedFile, @FormDataParam("file") FormDataContentDisposition headerDisp, @CookieParam("USER_COOKIE") String USER_COOKIE){

我能看到的最大问题是,当我在 Wire Shark 中观看会话时,它说请求数据包格式错误

它给出了一个错误

[格式错误的数据包:UASIP]

[专家信息(错误/格式错误):格式错误的数据包(发生异常)]

任何关于表单或处理过程中出现问题的想法将不胜感激。

【问题讨论】:

    标签: java rest jersey forms multipart


    【解决方案1】:

    一个不相关的拼写错误导致 Jersey 无法正确映射函数。

    格式错误的数据包源于我的计算机将校验和计算推迟到路由器的事实,因此数据包具有错误的校验和,但在它到达外部线路时已解决。

    【讨论】:

      猜你喜欢
      • 2012-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-04
      • 2015-10-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多