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

ResponseEntity不接受文本/csv:springboot

梁丘洲
2023-03-14

Iam试图创建一个API来接受CSV和json主体请求等文件。我尝试在spring boot使用responseEntity对象。

endpoint如下所示。

    @PostMapping(value="/csv",consumes=MediaType.ALL_VALUE)
    public void createConsumer(RequestEntity<?> data){



    }

内容头是通过邮递员设置的。

content-typetext/csvaccept*/*

抛出的错误是

2021-03-12 19:28:10.344  WARN 5780 --- [nio-8089-exec-2] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved [org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'text/csv' not supported]

我该怎么解决这个?

共有1个答案

司徒云
2023-03-14

如果使用file作为请求正文,请使用MulPartFile:

@PostMapping(value="/csv")
    public void createConsumer(@RequestParam MultipartFile file){
      // process file here depending on content (read file extension or content to decide it is json or csv)
    }
 类似资料:
  • 我试图通过RESTendpoint将数据从一个服务器发送到另一个服务器: 服务器B启动此请求: 服务器A接收请求并返回文件: 因此,很明显,我必须将声明更改为: 或者到 然后错误消失了,但我丢失了HttpStatus。回复时是否有确认信息?这里的正确解决方案是什么?

  • 输入项目值时:1016M012G 10/1K16:1-C,但它仅显示1016M012G 10/1K16:1-C,G后不带加号 1016M012G/10/1K16:1-C工程罚款1016M012G-10/1K16:1-C工程罚款 有什么问题??

  • 我正在运行Codeception来对付一个Laravel Homestead流浪汉实例。PHP版本5.5。12,拉威尔4.*。Codeception版本2.0。0 我可以使用localhost:8000127.0通过Chrome访问该网站。0.1:8000,或mysite。app:8000。该网站还远程部署在一台AWS服务器上,该服务器没有域名,但有一个公共IP地址,通过Chrome查看时可以正常

  • 我的SpringBoot应用程序通过REST HTTP调用外部服务,并通过客户端和方法实现。 到目前为止,客户机接收的始终是字符串主体->。前一段时间,我们调用的服务返回HTTP 202,但没有body,因此抛出以下异常: 。

  • 我正在使用tomcat v8,并试图通过RequestBody向我的REST API发送一个对象。这个REST API基本上是RequestMethod。这个API内部的逻辑是删除RequestBody中传递的对象。 这对我不起作用。我后来不得不将我的方法转换为POST,但我仍然想知道DELETE是否不接受RequestBody? 这是来自Spring框架或REST原则的限制,还是与我的Tomca

  • 下面,我有我试图使用的代码。它总是命中捕捉,返回空。月和日都是整数,它们已经过检查,以确保它们在现有日期内。不管怎样,我用“05”测试一个月,用“02”测试一天。由于某种原因, ##/## 输入不起作用吗? 编辑:我正在尝试格式化此输出,使其看起来像“May 02”。当我查看文档时,我看到页面的很大一部分专门用于格式化输出。为什么我的格式不是这样?