摘要:應(yīng)用場(chǎng)景描述微信禁止了使用表單上傳圖片,必須使用微信圖片上傳,該插件是一張一張的上傳的。上傳卡死的原因多張連續(xù)上傳的時(shí)候因?yàn)檫€未等一張圖片獲取完媒體,而下一張圖片又開(kāi)始請(qǐng)求獲取媒體,所以會(huì)出現(xiàn)卡死問(wèn)題。
應(yīng)用場(chǎng)景描述
上傳卡死的原因微信禁止了使用表單INPUT[TYPE="FILE"]上傳圖片,必須使用微信WEB JSSDK 圖片上傳,該插件是一張一張的上傳的。過(guò)程是這樣的 上傳圖片 ——> 返回圖片本地ID ——>根據(jù)圖片本地ID,獲取圖片媒體ID——>服務(wù)端根據(jù)圖片媒體ID下載圖片。
遞歸處理邏輯思路多張連續(xù)上傳的時(shí)候,因?yàn)檫€未等一張圖片獲取完媒體ID,而下一張圖片又開(kāi)始請(qǐng)求獲取媒體ID,所以會(huì)出現(xiàn)卡死問(wèn)題。解決方案如下:
遞歸處理 (推薦)
定時(shí)器處理
遞歸處理邏輯代碼定義兩個(gè)變量 var idx =0; var localIds; 分別存儲(chǔ)上傳序號(hào),記錄上傳到第幾張圖片,本地圖片ID數(shù)組,即調(diào)用微信 WEB JSSDK 的wx.chooseImage()返回的結(jié)果 寫(xiě)遞歸函數(shù)實(shí)現(xiàn)獲取根據(jù)圖片本地ID,獲取圖片媒體ID這個(gè)環(huán)節(jié)。
// ID數(shù)組 var localIds = null; // 上傳序號(hào) var idx = 0; var serverIds=""; wx.ready(function(){ //配置web jssdk通過(guò)執(zhí)行 //調(diào)用圖片上傳接口 wx.chooseImage({//返回本地圖片id 也可做為img 路徑顯示圖片 success: function (res) {//上傳本地圖片成功 localIds = res.localIds;//本地圖片id數(shù)組,下標(biāo)從0開(kāi)始 //調(diào)用上傳遞歸函數(shù) wxUploadImg(localIds); } }); /** * [wxUploadImg 獲取圖片媒體ID 遞歸函數(shù)] * @author 邱先生 * @copyright * @version [V1.0版本] * @date 2016-07-02 * @param {[type]} localIds [本地圖片ID數(shù)組] * @return {[type]} [description] */ function wxUploadImg(localIds){ wx.uploadImage({//獲取圖片媒體ID localId: localIds[idx].toString(), // 需要上傳的圖片的本地ID isShowProgressTips: 1, // 默認(rèn)為1,顯示進(jìn)度提示 success: function (res) {//獲取成功 // 上傳序號(hào),上傳一張 累計(jì) +1 idx++ //存儲(chǔ)圖片媒體ID,用,號(hào)分割 serverIds+=res.serverId+","; if(idx
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/79855.html
摘要:應(yīng)用場(chǎng)景在微信公眾號(hào)開(kāi)發(fā)圖片預(yù)覽功能,例如多張產(chǎn)品圖片瀏覽,微信已經(jīng)提供了預(yù)覽圖片接口。實(shí)現(xiàn)代碼加載微信這行代碼,引入了第三方微信,也可以具體參考微信手冊(cè)配置。綁定圖片點(diǎn)擊事件當(dāng)前顯示圖片的鏈接需要預(yù)覽的圖片鏈接列表 應(yīng)用場(chǎng)景 在微信公眾號(hào)開(kāi)發(fā) 圖片預(yù)覽功能,例如 多張產(chǎn)品圖片瀏覽 ,微信JSSDK 已經(jīng)提供了 預(yù)覽圖片接口。效果圖如下: showImg(https://segment...
摘要:配置先上配置每個(gè)頁(yè)面都調(diào)用微信授權(quán)配置注是我在暴露的接口這份配置主要是根據(jù)微信公眾號(hào)開(kāi)發(fā)踩坑記錄配置而來(lái)。 首先說(shuō)明,應(yīng)用環(huán)境是使用的是vue+vue-router,history模式開(kāi)發(fā)的單頁(yè)應(yīng)用。 配置 先上配置??? // index.js const protocol = location.protocol + // + location.host; router.afterE...
摘要:具體請(qǐng)看我在提問(wèn)里的回答下載七牛云文件間歇性失敗總結(jié)至此,在微信開(kāi)發(fā)中關(guān)于錄音這一塊兒的功能,就已經(jīng)介紹完畢。 showImg(https://segmentfault.com/img/remote/1460000013595733?w=454&h=339); 原文是在我自己博客中,小伙伴也可以點(diǎn)閱讀原文進(jìn)行跳轉(zhuǎn)查看,還有好聽(tīng)的背景音樂(lè)噢~ ????一年的時(shí)間里,前前后后都在搞微信開(kāi)發(fā)...
摘要:在微信端打開(kāi)手機(jī)攝像頭拍照,將拍照?qǐng)D片保存到服務(wù)器上需要使用到微信的接口,主要使用到了拍照或從手機(jī)相冊(cè)中選圖接口上傳圖片接口參考資料一引入微信二通過(guò)接口注入權(quán)限驗(yàn)證配置三微信端拍照接口默認(rèn)可以指定是原圖還是壓縮圖,默認(rèn)二者都有可以指 在微信端打開(kāi)手機(jī)攝像頭拍照,將拍照?qǐng)D片保存到服務(wù)器上需要使用到微信的JSSDK接口,主要使用到了拍照或從手機(jī)相冊(cè)中選圖接口(chooseImage),上傳...
閱讀 1819·2021-11-24 09:39
閱讀 2297·2021-09-30 09:47
閱讀 4166·2021-09-22 15:57
閱讀 1886·2019-08-29 18:36
閱讀 3586·2019-08-29 12:21
閱讀 598·2019-08-29 12:17
閱讀 1273·2019-08-29 11:25
閱讀 732·2019-08-28 18:26