Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
React native TypeError:应为动态类型';字符串';但有'型;对象';自然反应_React Native - Fatal编程技术网

React native TypeError:应为动态类型';字符串';但有'型;对象';自然反应

React native TypeError:应为动态类型';字符串';但有'型;对象';自然反应,react-native,React Native,我必须用react native将图像上传到cloudinary。我使用了以下代码: uploadImage(source) { let timestamp = (Date.now() / 1000 | 0).toString(); let api_key = '***********' let api_secret = '**************' let cloud = '*****' let hash_string = 'timestamp=' + timestamp + api_se

我必须用react native将图像上传到cloudinary。我使用了以下代码:

uploadImage(source) {
let timestamp = (Date.now() / 1000 | 0).toString();
let api_key = '***********'
let api_secret = '**************'
let cloud = '*****'
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: source, type: 'image/png', name: 'upload.png'});
formdata.append('timestamp', timestamp);
formdata.append('api_key', api_key);
formdata.append('signature', signature);
xhr.send(formdata);};
但我得到了这个错误:

TypeError:应为动态类型“string”,但类型为“object”

如果您从“react native image picker”获得“源”, 尝试改变

formdata.append('file', {uri: source, type: 'image/png', name: 'upload.png'}); 
进入

在android中。
我用这种方式解决了我的问题。

尝试
formdata.append('file',JSON.stringify({uri:source,type:'image/png',name:'upload.png')是的,现在它可以工作了,但它没有上传到云中。。!您得到的响应代码是什么?“错误:{“消息”:“不支持的源URL:{\\\“uri\\”:{\\“uri\\”:\\”file:///storage/emulated/0/Pictures/image-0eb186ab-5d04-4037-affd-dfb49b92c7ec.jpg\\“},\\“type\\”:\\“image/png\\”,\\“name\\”:\\“upload.png谢谢!你救了我一天!
 formdata.append('file', {uri: source.uri, type: 'image/png', name: 'upload.png'});