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

使用多部分表单数据发送数据时生成错误的PUT方法

於彬
2023-03-14

我正在用spring mvc中的put方法发送一些包含多部分数据的数据。sme进程正在处理post请求,但在put请求中生成错误。这是我的代码片段:

@RequestMapping(value= "update/{id}", method = RequestMethod.PUT, consumes = MediaType.MULTIPART_FORM_DATA_VALUE)

public Product update(@PathVariable("id") int id,@RequestParam("name") String name,@RequestParam("price") int price @RequestPart("file") MultipartFile file) {
}

生成的错误是:HTTP状态400-所需的字符串参数“name”不存在

键入状态报告

消息所需的字符串参数“name”不存在

说明客户端发送的请求在语法上不正确。


共有2个答案

沈皓君
2023-03-14

请查看如何将PUT参数传递到页面?。参数必须在正文中,而不是URL或标题中。

芮歌者
2023-03-14

谢谢大家回答这个问题。我得到了我的答案,那就是我们不能将多部分/表单数据用于put,因为put只需要一个条目

 类似资料:
  • 问题内容: 我正在编写一个RESTful API。我在使用不同的动词上载图像时遇到麻烦。 考虑: 我有一个对象,可以通过对URL的发布/放置/删除/获取请求来创建/修改/删除/查看。如果有要上载的文件,则请求是多部分形式;如果只有文本要处理,则请求是application / xml。 为了处理与对象相关的图像上传,我正在做类似的事情: 这里的主要问题是在尝试处理放置请求时,显然$ _POST不包

  • 控制器(我忽略了导入) 下面是我在控制器中引用的相关html页面。您可以假设每一个服务和存储库都正常工作,并完成了它的工作。 这是确认页面。这里有点不对劲。插入到表单的隐藏输入框中的数据不会被提交: 扬尼克

  • 每当我将enctype="multipart/form-data"添加到我的html表单时,我都会得到 如果我把enctype去掉它就会工作 我这样发送csrf代码: 我的Express文件: 我的表格: 我的路线文件 最后是管理员。js文件 此外,对于依赖关系: 我认为原因是multer,但后来我更改了multer版本并停止将其用作全局中间件,我仍然会遇到这个错误。 注意:如果我将操作更改为在U

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

  • 我正在尝试用RestTemplate上传一个文件到带有Jetty的Raspberry Pi。在Pi上有一个运行的servlet: 这是我得到的输出: UI-elements.html已上传! org.springframework.web.multipart.support.StandardMultipartTtpServletRequest$StandardMultipartFile@47e76

  • 所以这个HTML代码以正确的格式提交数据给我。 谢了!