Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

411
Visualizações
Cómo subir una imagen al servidor (REACT NATIVE apisauce)

Publicar correctamente un nuevo anuncio, pero la carga de imágenes no funciona

 import client from "./client"; import {API_KEY} from "./constant"; const addListing = (postData,locationId,img) => client.post(`api.php?key=${API_KEY}&type=insert&object=item&action=add&catId=${postData.category}&contactName=&contactPhone=${postData.mobile}&sPhone=${postData.mobile}&showPhone=1&contactEmail=${postData.mobile}@kippee.com&price=${postData.price}&countryId=in&regionId=&cityId=${locationId}&title[en_US]=${postData.title}&description[en_US]=${postData.description}&photos=[${imgUrl}]`);

¿Cómo puedo convertir a formdata?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

A través de una gran cantidad de pruebas y errores, llegué a esta solución para cargar imágenes a s3 desde una aplicación nativa de reacción, debería poder agregar cualquier dato que necesite como parámetros de URL.

 let xhr = new XMLHttpRequest(); xhr.open('PUT', media.putURL); // where you want to put the image xhr.upload.addEventListener('progress', (event) => { if (event.lengthComputable) { let percentComplete = (event.loaded / event.total) * 100; } }); xhr.upload.addEventListener('error', () => { // error }); xhr.onload = () => { console.log('onload', xhr.status); // finished }; xhr.onreadystatechange = () => { console.log('xhr.status ', xhr.status); if (xhr.readyState === 4) { if (xhr.status === 200) { // success } else { // upload error } } } xhr.setRequestHeader('Content-Type', 'image/jpg'); if(Platform.OS === 'android'){ xhr.send({uri: media.uri, type: 'image/jpg', name: media.name}); } else { RNFetchBlob.fs.readFile(media.uri, 'base64', 4095).then((data) => { let url = "data:image/jpg;base64,"+data fetch(url).then(res => res.blob()).then((blob) => { xhr.send(blob); }) }).catch((error) => { console.log('Error reading file: ', error); }) }

Si es necesario usar el paquete rn-fetch-blob de iOS para obtener los datos de imagen codificados en base64, entonces, al usar la API de obtención, los datos del blob se obtienen de la cadena codificada en base64 que luego se puede pasar a la función de envío xhr.

Es probable que haya una mejor manera de obtener datos de imágenes de iOS, pero cuando escribí esto a principios de año, este proceso de 3 pasos era la única forma en que podía cargar las imágenes de iOS.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda