Erro ao enviar imagem par api

Função para pegar imagem do storage:

Função para enviar para API:

E o retorno da requisição é um 200 pois eu setei isso para testes na api, porem dentro do data vem um objeto vazio:
image

Já na API eu crio instância do multer dentro da minha rota:
image

E dentro do meu controller eu recupero de request.file as imagem selecionada
image

O problema é que dentro do insomnia isso funciona normalmente

Se alguém puder me ajudar ficarei grato

Quando for postar código, evite mandar imagens, poste o código mesmo que fica bem melhor pra gente que vai ajudar

Pelo que to entendendo, vc tah enviando a imagem de um jeito no código e de outro no insomnia. No insomnia vc está enviando a imagem propriamente dita, e no código vc está enviando um json como formdata.

No código, vc teria que, de alguma forma, passar os bytes da imagem, igual é feito no insomnia.

Necessariamente não preciso enviar os bytes pois em diversos posts vi que era dessa forma que se faz, inclusive eu mesmo no passado enviei imagens dessa forma, mas eu não sei se o problema é mesmo na função no app ou no multer

se funcionou no insomnia, provavelmente no é erro na API. E quando precisei fazer upload de algo com javascript (ou qualquer outra linguagem), sempre precisei carregar os bytes para fazer o envio. Mas talvez tenha algum recurso no react-native que facilite isso tb que não conheço.

Vc está usando o axios? E verifique tb se vc setou o content-type da requisição para multipart/form-data tb.

Sim coloquei ele lá, na imagem esta sem pois era uma imagem ja printada antes de um outro teste, mas como falei ele esta setado la

Na requisição tenta passar a image direto no data (data: image) sem colocar em um objeto, assim:

META_COLLECT_API.post(url: "/itemregistro/criar", data: image, config: {
  headers:{
    cnpj: "coleta",
    token: "1111aaaa2222",
    imei: "123123",
    modulo: 35,
  }
})
1 curtida

ele aponta um erro aqui de sintaxe

META_COLLECT_API.post("/itemregistro/criar", {data: image} , {
        headers:{
          cnpj: "coleta",
          token: "1111aaaa2222",
          imei: 123123,
          modulo: 35,
        }

Dessa forma ele aceita só que tbm nao chega a imagem la

Tenta passar só a image, sem declarar o data:

META_COLLECT_API.post("/itemregistro/criar", image, {
        headers:{
          cnpj: "coleta",
          token: "1111aaaa2222",
          imei: 123123,
          modulo: 35,
        }
})