Skip to content

Instantly share code, notes, and snippets.

@grim-reapper
Forked from jamielob/upload.js
Created July 1, 2022 10:11
Show Gist options
  • Save grim-reapper/2c3106e9c8197b0d71a30cbf34f73d63 to your computer and use it in GitHub Desktop.
Save grim-reapper/2c3106e9c8197b0d71a30cbf34f73d63 to your computer and use it in GitHub Desktop.
Upload image from React Native to Cloudinary
var CryptoJS = require('crypto-js');
function uploadImage(uri) {
let timestamp = (Date.now() / 1000 | 0).toString();
let api_key = 'your api key'
let api_secret = 'your api secret'
let cloud = 'your cloud name'
let hash_string = 'timestamp=' + timestamp + api_secret
let signature = CryptoJS.SHA1(hash_string).toString();
let upload_url = 'https://api.cloudinary.com/v1_1/' + cloud + '/image/upload'
let xhr = new XMLHttpRequest();
xhr.open('POST', upload_url);
xhr.onload = () => {
console.log(xhr);
};
let formdata = new FormData();
formdata.append('file', {uri: uri, type: 'image/png', name: 'upload.png'});
formdata.append('timestamp', timestamp);
formdata.append('api_key', api_key);
formdata.append('signature', signature);
xhr.send(formdata);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment