1. 程式人生 > 實用技巧 >uniapp 上傳圖片至阿里雲OSS

uniapp 上傳圖片至阿里雲OSS

本文出自:https://www.cnblogs.com/2186009311CFF/p/14248337.html

//oss引數請求介面獲得
            uploadImage: function(imageSrc_local, OssPara, userId) {
                return new Promise((resolve, reject) => {
                    
                    //當前時間精確到毫秒字串
                    var date = new Date(); //獲取時間
                    
//console.log(date); var year = date.getFullYear(); var month = date.getMonth() + 1; var day = date.getDate(); var hour = date.getHours(); var minute = date.getMinutes(); var second = date.getSeconds(); month
= isSubTen(month); day = isSubTen(day); //這樣寫顯示時間在1~9會擠佔空間;所以要在1~9的數字前補零; if (hour < 10) { hour = '0' + hour; } if (minute < 10) { minute = '0' + minute; }
if (second < 10) { second = '0' + second; } //var x=date.getDay();//獲取星期 var time = year + month + day + hour + minute + second; //圖片命名規則:介面返回的地址 +介面返回的字首 + 使用者id +'_'+當前時間精確到毫秒字串 +'.png'; let nameStr = OssPara.dir + userId + '_' + date + '.png'; console.log('nameStr' + nameStr) uni.uploadFile({ url: OssPara.host, //輸入你的bucketname.endpoint filePath: imageSrc_local, fileType: 'image', name: 'file', formData: { name: nameStr, key: nameStr, policy: OssPara.policy, // 輸入你獲取的的policy OSSAccessKeyId: OssPara.accessKeyId, // 輸入你的AccessKeyId success_action_status: '200', // 讓服務端返回200,不然,預設會返回204 signature: OssPara.signature, // 輸入你獲取的的signature }, success: res => { //console.log(res) if (res.statusCode == '200') { resolve(OssPara.host + '/' + nameStr); } else { console.log.log(res); reject('介面返回錯誤'); } }, fail() { reject('網路連結錯誤'); } }); }); },