当前位置: 首页 > 面试题库 >

使用python请求进行多部分数据POST:未发现多部分边界

谷梁星雨
2023-03-14
问题内容

我有一个表单数据以及要在同一POST中发送的文件。例如,{duration:2000,file:test.wav}。我在这里看到了许多关于使用python请求发布多部分/表单数据的线程。

我的样品要求如下:

    files = {'file': ('wavfile', open(filename, 'rb'))}
    data = {'duration': duration}
    headers = {'content-type': 'multipart/form-data'}
    r = self.session.post(url, files=files, data=data, headers=headers)

但是,当我执行上面的代码时,出现此错误:

5:59:55.338 Dbg 09900
[DEBUG]解决处理程序[null]中的异常:org.springframework.web.multipart.MultipartException:无法解析多部分servlet请求;嵌套的异常是org.apache.commons.fileupload.FileUploadException:该请求被拒绝,因为未找到多部分边界。

所以我的问题是:1)我如何查看正在发送的请求的内容?无法使用Wireshark,它不能跨网络使用。2)为什么在编码数据中缺少边界?我有什么想念的吗,请指出。


问题答案:

您永远不要自己设置该标头。我们将标头正确设置为边界。如果设置了该标头,我们将不会,并且您的服务器将不知道预期的边界(因为它已添加到标头)。删除您的自定义Content-
Type标头即可。



 类似资料:
  • 我有一个表单数据以及文件要在同一职位上发送。对于ex,{duration:2000,file:test.wav}。我在这里看到了使用python请求发布多部分/表单数据的许多线程。它们很有用,尤其是这个。 我的示例请求如下: 5:59:55.338 Dbg 09900[DEBUG]处理程序解析异常[null]:org.springframework.web.multipart.multipartE

  • 我正在使用Multipart执行帖子类型请求。问题是因为我一直收到两个错误 1) 500 2) 422不可处理实体 Api仅接受音乐文件。因此,我添加了一个默认文件,以避免不断选择新文件 和我的界面 如果有任何帮助,我将不胜感激。 我发现它将文件作为对象通过Reform2发送到服务器

  • 问题内容: 我正在尝试通过带有POST请求的照片上传 根据自述文件,我应该能够做到这一点 问题是,这不起作用。我收到测试服务器的回复,说它转储了0个post变量。 我已经确认该HTML小页面服务器处于工作状态 所以问题是,请求模块在做什么?有没有更好的方法来发送节点? 问题答案: 经过更多研究后,我决定使用。这使得分段上传非常容易。

  • 问题内容: 在Apache Commons HttpClient的3.x版本中,可以进行multipart / form-data POST请求(2004年的示例)。不幸的是,这在HttpClient的4.0版本中不再可能。 对于我们的核心活动“ HTTP”,多部分内容超出了范围。我们很乐意使用由其他项目维护的多部分代码,但我对此一无所知。几年前,我们曾尝试将多部分代码移至commons编解码器,

  • 我正在使用vapor为我的应用程序托管图像。我有以下代码来接收图像并打印它。 我怎么能发送一个多部分的请求,只是使用swft?。这是我正在使用的当前帖子请求代码。

  • 以下API使用postman工作: Spring boot,后端代码: ReactJS,前端代码:我在中有对象数组。 触发功能的按钮: 我需要将我的前端(ReactJS)代码更改为,就像我使用postman发布请求一样。当前JS代码导致以下错误响应: Servlet。路径为[]的上下文中的servlet[dispatcherServlet]的service()引发了异常[请求处理失败;嵌套异常为o