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

不支持Spring/Postman内容类型“application/octet-stream”

毋琪
2023-03-14

我的控制器如下所示:

@RestController
@RequestMapping(path = RestPath.CHALLENGE)
public class ChallengeController {

    private final ChallengeService<Challenge> service;

    @Autowired
    public ChallengeController(ChallengeService service) {
        this.service = service;
    }

    @ApiOperation(value = "Creates a new challenge in the system")
    @RequestMapping(method = RequestMethod.POST, consumes = {MediaType.MULTIPART_FORM_DATA_VALUE, MediaType.APPLICATION_OCTET_STREAM_VALUE},
        produces = MediaType.APPLICATION_JSON_VALUE)
    @ResponseStatus(HttpStatus.CREATED)
    public ChallengeDto create(@ApiParam(value = "The details of the challenge to create") @RequestPart("challengeCreate") @Valid @NotNull @NotBlank ChallengeCreateDto challengeCreate,
                           @ApiParam(value = "The challenge file") @RequestPart("file") @Valid @NotNull @NotBlank MultipartFile file) {
        return service.create(challengeCreate, file);
    }
}

我已经尝试将“consumes”更改为将APPLICATION_OCTET_STREAM_VALUE删除为MULTIPART_FORM_DATA_VALUE,也尝试删除它,但这些都没有帮助。

如果你需要更多的信息,请告诉我。谢了。

共有1个答案

上官恩
2023-03-14

@Rokin回答很好,但不需要将json放入文件并上传。您也可以通过将内容类型传递给json对象来实现。邮递员在发送表单数据时支持内容类型选项。要进一步了解,请看下图,这是自我描述的。

 类似资料: