2017-06-07 13 views
0

我想上傳到cloudinary視頻和下面的代碼適用於iOS,但得到Android上的錯誤上傳開始時幾乎是瞬間,該誤差爲Unrecognized FormData part.「無法識別的FormData部件」。上反應原生(機器人)錯誤的視頻上傳使用XMLHttpRequest

let {api_key, api_secret, cloud_name, url} = CLOUDINARY_CONFIG; 
let timestamp = (Date.now()/1000 | 0).toString(); 
let hash_string = `eager_async=true&folder=${endpoint}&timestamp=${timestamp}&use_filename=true${api_secret}`; 
let signature = CryptoJS.SHA1(hash_string).toString(); 
let formData = new FormData(); 
formData.append('timestamp', timestamp); 
formData.append('api_key', api_key); 
formData.append('signature', signature); 
formData.append('eager_async', true); 

formData.append('file', {uri: body.uri, type: 'video/mp4', name: `video_${timestamp}.mp4`}); 
formData.append('eager', [{width: 720}]); 

formData.append('folder', endpoint); 
formData.append('use_filename', true); 
let xhr = new XMLHttpRequest(); 
xhr.open('POST', url); 

xhr.onerror = (event) => { 
next(actionWith({ 
    type: failureType, 
    params 
})); 
}; 

xhr.send(formData); 

最初body.uri有一個無效的路徑,它需要的file://

回答

0

找到了解決辦法的前綴,問題不是要設置的工作在iOS出於某種原因寬度。

刪除行formData.append('eager', [{width: 720}]);修復了這個問題。

相關問題