国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

關于微信jssdk實現多圖片上傳的一點心得分享

2019-11-19 18:31:07
字體:
來源:轉載
供稿:網友

一.首先在common.js里封裝一個函數,在需要調用jsSDK的頁面引用此方法即可實現微信的信息配置

function signatureJSSDK() { var url = window.location.href.split('#')[0];//后臺需要此頁面的url來生成參數 $.ajax({ url:IPWeiXinJssdk,//調用后臺接口,用后臺返回的結果來進行微信接口的基礎配置 type:"post", dataType:"json", data:{"url":url}, success:function (result) {  if (result) {         //后臺接口調用成功,開始配置微信  wx.config({   debug : false, // 開啟調試模式,調用的所有api的返回值會在客戶端alert出來,若要查看傳入的參數,可以在pc端打開,參數信息會通過log打出,僅在pc端時才會打印。   appId : result.appid, // 必填,公眾號的唯一標識   timestamp : result.timestamp, // 必填,生成簽名的時間戳   nonceStr : result.noncestr, // 必填,生成簽名的隨機串   signature : result.signature,// 必填,簽名,見附錄1   jsApiList : [// 必填,需要使用的JS接口列表,所有JS接口列表見附錄2   /*    * 所有要調用的 API 都要加到這個列表中    * 這里以圖像接口為例    */   "chooseImage",   "previewImage",   "uploadImage",   "downloadImage" ]  });  } } })}//微信配置失敗會執行wx.error函數wx.error(function(res) { confirmBox2("wx.config.error"); console.log(res);});

二.在需要使用微信多圖上傳的頁面編寫如下代碼

$(function () { signatureJSSDK();//微信jssdk配置 // config信息驗證失敗會執行error函數,如簽名過期導致驗證失敗,具體錯誤信息可以打開config的debug模式查看, // 也可以在返回的res參數中查看,對于SPA可以在這里更新簽名。 wx.ready(function() {//微信配置成功執行此函數         //localIdsArr 用來存放localIds,serverIdsArr用來存放serverIds  var localIdsArr = [];var serverIdsArr = [];  $(".BImgContent").click(function () {//點擊事件觸發微信拍照  var that = $(this);  wx.chooseImage({//調用微信拍照功能   count: 1, // 默認9   sizeType: ['compressed'], // 可以指定是原圖還是壓縮圖,默認二者都有   sourceType: ['camera'], // 可以指定來源是相冊還是相機,默認二者都有   success: function(res) {   localIds = res.localIds; // 返回選定照片的本地ID列表,localId可以作為img標簽的src屬性顯示圖片   $(that).find(".ago").attr('src', localIds);//本地預覽,localIds可以當做img標簽的src屬性   wx.uploadImage({//用戶預覽的同時,上傳至微信服務器    localId:""+localIds,    success: function(res) {    var i =0;    if($(that).hasClass("img1")){     i = 1;    }else if($(that).hasClass("img2")){     i = 2;    }else if($(that).hasClass("img3")){     i = 3;    }    localIdsArr[i] = localIds;//將此圖片的localIds存入數組    serverIdsArr[i] = res.serverId;//將此圖片在微信服務器上的werverID存入數組    }   });   }  });  });  $("#nextStep").click(function () {//用戶點擊下一步時,調用后臺接口,傳給后臺serverIdsArr,后臺可通過此id從微信服務器下載這些圖片到后臺  var flag = 0;  $(".ago").each(function (index,val) { //判斷前臺頁面需要上傳的部分是否都上傳完   var localIds = $(val).attr("src");   if(localIds === "./img/photoAddContent1.png"){   flag = 1;   return false;   }  });   if(flag === 0){//驗證通過,傳送serverID至后臺//   alert("開始發送serverID至后臺");   $(this).unbind("click");   for(var i=0;i<serverIdsArr.length;i++){   pushSeverId(serverIdsArr[i]);   }  }else{   confirmBox2("請完善以上資料");  }  }); }); //將serverId發至后臺,后臺從微信服務器下載圖片,然后反饋圖片在我們服務器上的相對路徑 var urlList = []; function pushSeverId(serverId) {  $.post('http://XXX.XXX', { serverId: serverId },function (text, status) {  var obj = {"imgStr":"","imgType":""};  obj.imgStr = text;//text為后臺返回的圖片url  urlList.push(obj);//  alert(JSON.stringify(urlList));//可以在手機上打印此數組,調試用,看看是否全部上傳成功  }); } })

  以上是我在使用微信jssdk,實現多圖上傳的代碼,因為每個人的需求不盡相同,有的部分代碼被我刪除,希望能幫到大家!如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 广宁县| 香港| 特克斯县| 胶南市| 彩票| 翼城县| 大足县| 苍山县| 天峻县| 英吉沙县| 策勒县| 丽水市| 锦屏县| 清流县| 定西市| 苍溪县| 龙门县| 酉阳| 集贤县| 浦北县| 冀州市| 内乡县| 铜川市| 贡觉县| 义马市| 勃利县| 柞水县| 永修县| 乐业县| 蒲江县| 进贤县| 加查县| 阳西县| 临西县| 黄大仙区| 焉耆| 宁海县| 衡南县| 神木县| 临夏市| 南康市|