Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

397
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!