validação multipart / form-data e FormType

Estou construindo uma API usando oFOSRestBundle e estou no estágio em que preciso implementar o tratamento da criação de novas entidades que contêm dados binários.

Seguindo os métodos descritos emEnviando dados binários junto com uma solicitação da API RESTenviando os dados comomultipart/form-data é o mais prático para a nossa implementação devido à ~ 33% de largura de banda adicionada necessária para o Base64.

Pergunta, questão

Como posso configurar o terminal REST para manipular o arquivo na solicitação e executar a validação na entidade codificada em JSON ao enviar os dados comomultipart/form-data?

Ao enviar o JSON bruto, uso o formulário do SymfonyhandleRequest método para executar a validação com relação ao costumeFormType. Por exemplo:

$form = $this->createForm(new CommentType(), $comment, ['method' => 'POST']);
$form->handleRequest($request);

if ($form->isValid()) {

  // Is valid

}

O motivo de eu gostar dessa abordagem é para poder ter mais controle sobre a população da entidade, dependendo se a ação é uma atualização (PUT) ou nova (POST).

Eu entendo que o SymfonyRequest O objeto lida com a solicitação de forma que anteriormente os dados JSON fossem oscontent variável, mas agora é digitada emrequest->parameters->[form key] e os arquivos dentro do saco de arquivos (request->files)

questionAnswers(4)

yourAnswerToTheQuestion