【发布时间】:2025-12-12 13:40:02
【问题描述】:
我正在尝试开发一个 POST API 请求,它接受请求作为表单数据,其中键具有字符串列表作为值。 当我通过 POSTMAN 发送请求时,它给了我错误消息“:“不支持内容类型 'application/octet-stream'”,
我尝试使用 CURL 测试 API 并且它有效,但是当我使用 Postman 传递它时,它给出了错误。
我的 API 代码:
@PostMapping(value= "/column", produces = "application/json", consumes = {"multipart/form-data"})
@ResponseBody
public String searchEntIdColumn(
@RequestPart(value = "ENT_ID") String entId,
@ApiParam("Indices to Search; Search Default Indices or Specify a List ")
@Nullable @RequestPart(value = "SearchIndices") List<String> searchIndices) {
LOGGER.debug("SearchController: searchEntIdColumn() :: Search Term is : ENT_ID = {} "
+ "on searchIndices : {} ", entId, searchIndices);
return responseBuilderService.searchColumn(searchIndices, entId);
}
{
"timestamp": "2019-08-29T16:49:33.469+0000",
"status": 415,
"error": "Unsupported Media Type",
"message": "Content type 'application/octet-stream' not supported",
"path": "/search/column"
}
【问题讨论】:
-
我们使用 springboot 2.1.x 和 @PostMapping(value = "/v1/rest",produces = APPLICATION_JSON_VALUE) 和 @RequestBody PreviewV1 previewRequest 并且它似乎在没有指定消耗的情况下工作
-
@KalpeshSoni 如果我使用RequestBody,如何引用表单请求正文中的键值?你能展示一些示例代码吗,我不想为我的请求正文使用一个类
-
据我所知@RequestPart是用来上传文件的,如果你发布一个json,本质上它是java中的一个对象,你为什么不想要一个类?
-
@KalpeshSoni,是的,你说的是对的,我将其更改为请求正文而不是请求部分并完成了它。谢谢你
标签: java rest spring-boot arraylist postman