web-dev-qa-db-fra.com

Type de contenu Spring / Postman 'application / octet-stream' non pris en charge

J'utilise Postman pour envoyer la demande suivante: enter image description here

Mon contrôleur ressemble à ceci:

@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);
    }
}

J'ai déjà essayé de modifier les "consommations" pour supprimer APPLICATION_OCTET_STREAM_VALUE à MULTIPART_FORM_DATA_VALUE et j'ai également essayé de le supprimer, mais rien de tout cela n'a aidé.

Veuillez me dire si vous avez besoin de plus d'informations. Merci.

11
StackJP

Content-Type est un paramètre d'en-tête et par défaut, il n'est pas vérifié et par défaut à application-octet-stream. Cochez simplement la case sous l'élément de ruban d'en-têtes (qui une fois coché par défaut est application/json). enter image description here

0
John

@Rokin Answer est bon mais n'a pas besoin de placer json dans le fichier et de le télécharger. Vous pouvez y parvenir en passant également le type de contenu à l'objet json. Postman prend en charge les options de type de contenu lors de l'envoi de données de formulaire. pour plus d'informations, voir l'image ci-dessous qui est auto-descriptive.

enter image description here

0
Irfan Nasim