React Native使用fetch實現(xiàn)圖片上傳的示例代碼
本文介紹了React Native使用fetch實現(xiàn)圖片上傳的示例代碼,分享給大家,具體如下:
普通網(wǎng)絡(luò)請求參數(shù)是JSON對象
圖片上傳的請求參數(shù)使用的是formData對象
使用fetch上傳圖片代碼封裝如下:
let common_url = 'http://192.168.1.1:8080/'; //服務(wù)器地址
let token = ''; //用戶登陸后返回的token
/**
* 使用fetch實現(xiàn)圖片上傳
* @param {string} url 接口地址
* @param {JSON} params body的請求參數(shù)
* @return 返回Promise
*/
function uploadImage(url,params){
return new Promise(function (resolve, reject) {
let formData = new FormData();
for (var key in params){
formData.append(key, params[key]);
}
let file = {uri: params.path, type: 'application/octet-stream', name: 'image.jpg'};
formData.append("file", file);
fetch(common_url + url, {
method: 'POST',
headers: {
'Content-Type': 'multipart/form-data;charset=utf-8',
"x-access-token": token,
},
body: formData,
}).then((response) => response.json())
.then((responseData)=> {
console.log('uploadImage', responseData);
resolve(responseData);
})
.catch((err)=> {
console.log('err', err);
reject(err);
});
});
}
使用方法
let params = {
userId:'abc12345', //用戶id
path:'file:///storage/emulated/0/Pictures/image.jpg' //本地文件地址
}
uploadImage('app/uploadFile',params )
.then( res=>{
//請求成功
if(res.header.statusCode == 'success'){
//這里設(shè)定服務(wù)器返回的header中statusCode為success時數(shù)據(jù)返回成功
upLoadImgUrl = res.body.imgurl; //服務(wù)器返回的地址
}else{
//服務(wù)器返回異常,設(shè)定服務(wù)器返回的異常信息保存在 header.msgArray[0].desc
console.log(res.header.msgArray[0].desc);
}
}).catch( err=>{
//請求失敗
})
注意:由于后臺服務(wù)器配置的不同,
let file = {uri: params.path, type: 'application/octet-stream', name: 'image.jpg'}中的type也可能是multipart/form-data
formData.append("file", file)中的的file字段也可能是images
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- ReactNative實現(xiàn)圖片上傳功能的示例代碼
- react native實現(xiàn)往服務(wù)器上傳網(wǎng)絡(luò)圖片的實例
- React+ajax+java實現(xiàn)上傳圖片并預(yù)覽功能
- React中上傳圖片到七牛的示例代碼
- React實現(xiàn)阿里云OSS上傳文件的示例
- react quill中圖片上傳由默認轉(zhuǎn)成base64改成上傳到服務(wù)器的方法
- 基于Node的React圖片上傳組件實現(xiàn)實例代碼
- React獲取Java后臺文件流并下載Excel文件流程解析
- react-native-fs實現(xiàn)文件下載、文本存儲的示例代碼
- react使用axios實現(xiàn)上傳下載功能
相關(guān)文章
React組件三大核心屬性State?props?Refs介紹
組件實例的三大核心屬性是:State、Props、Refs。類組件中這三大屬性都存在。函數(shù)式組件中訪問不到?this,也就不存在組件實例這種說法,但由于它的特殊性(函數(shù)可以接收參數(shù)),所以存在Props這種屬性2023-02-02
React的createElement和render手寫實現(xiàn)示例
這篇文章主要為大家介紹了React的createElement和render手寫實現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-08-08
解決React報錯Parameter 'props' implicitly&nb
這篇文章主要為大家介紹了React報錯Parameter 'props' implicitly has an 'any' type的解決處理方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-12-12
react-native-fs實現(xiàn)文件下載、文本存儲的示例代碼
本篇文章主要介紹了react-native-fs實現(xiàn)文件下載、文本存儲的示例代碼,具有一定的參考價值,有興趣的可以了解下2017-09-09

