1
resposta

Pegar binário do Request

Tentei fazer o desafio de enviar uma imagem para a Api via Binary no postman , mas não consegui recuperar pelo Illuminate\Http\Request. O Laravel tem algum lugar que ele consegue recuperar esse conteúdo no controller para salvar a imagem?

Obrigado.

1 resposta

Olá, William! Tudo bem?

Peço desculpa pela demora para responder o seu tópico.

Sim, o Laravel possui uma maneira bem conveniente de lidar com o envio de arquivos, incluindo imagens, por formulários HTTP. Para recuperar uma imagem enviada via Binary no Postman ou qualquer outra ferramenta similar, você pode usar o método file da classe Illuminate\Http\Request no seu controller.

Aqui está um exemplo de como você pode fazer isso:

use Illuminate\Http\Request;

public function store(Request $request)
{
    if ($request->hasFile('imagem')) {
        $imagem = $request->file('imagem');

        // Salve a imagem ou faça o que você precisa com ela
        $caminho = $imagem->store('caminho/para/salvar'); // Salva a imagem no diretório especificado

        // Outras operações que você pode fazer com a imagem
        $nomeOriginal = $imagem->getClientOriginalName(); // Obtém o nome original do arquivo
        $tamanho = $imagem->getSize(); // Obtém o tamanho do arquivo
        // ...
    }

    // Resto do código do seu controller...
}

No exemplo acima, imagem é o nome do campo que você usou para enviar a imagem no Postman. Certifique-se de que o nome do campo corresponda ao nome usado no método hasFile e file. Você pode alterar o caminho especificado no método store para salvar a imagem no diretório desejado.

Gostaria de pontuar que o exemplo compartilhado é apenas uma forma de se fazer isso, para implementar em seu projeto é necessário fazer ajustes para não haver conflitos. Para mais informações compartilharei com você o trecho da documentação oficial do Laravel que trata sobre a recuperação de arquivos enviados por Requests HTTP.

Espero ter lhe ajudado. Caso tenha mais dúvidas ou problemas relacionados com este tópico, estarei a disposição.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.