微信chooseImage接口部分機型選擇圖片后莫名其妙的跳轉其他頁面
問題描述
微信調用接口開啟debug模式都是正常的,但是部分用戶訪問時程序到了chooseImage會跳轉上上一頁面或者關閉當前頁回單微信菜單界面彈出提示拍照按鈕。以下是我程序該方法調用:
var origin = location.origin;if(ctx != ""){ origin = origin + ctx + "/";}$.ajax({ type: "POST", url: ctx + '/weChat/getSignatureInfo', data: {pageUrl:location.href.split('#')[0]}, dataType: "json", success: function(data){var configData = { debug: false, // 開啟調試模式,調用的所有api的返回值會在客戶端alert出來,若要查看傳入的參數,可以在pc端打開,參數信息會通過log打出,僅在pc端時才會打印。 appId: data.appid, // 必填,公眾號的唯一標識 timestamp: data.timestamp, // 必填,生成簽名的時間戳 nonceStr: data.nonceStr, // 必填,生成簽名的隨機串 signature: data.signature,// 必填,簽名,見附錄1 jsApiList: ['chooseImage','uploadImage']// 必填,需要使用的JS接口列表,所有JS接口列表見附錄2};// 加載微信SDK引入js // $.getScript('http://res.wx.qq.com/open/js/jweixin-1.0.0.js').done(function() { wx.config(configData); wx.ready(function () {var uploadImgs =null; wx.chooseImage({ count: 1, // 默認9 sizeType: ['original', 'compressed'], // 可以指定是原圖還是壓縮圖,默認二者都有 sourceType: [ 'camera'], // 可以指定來源是相冊還是相機,默認二者都有 success: function (res) { alert("dep1"); uploadImgs = res.localIds; alert("dep2"); var localId = uploadImgs.pop(); alert("dep3");wx.uploadImage({ localId:localId, // 需要上傳的圖片的本地ID,由chooseImage接口獲得 isShowProgressTips: 1, // 默認為1,顯示進度提示 success: function (res) {alert("dep4"); var serverId = res.serverId; // 返回圖片的服務器端IDalert("dep5"); if(serverId.indexOf("wxLocalResource://")>=0){ $("#errorMessage").text("圖片上傳失敗,請重新上傳!"); $('.phone_layer_box').show(); return; } sessionStorage.setItem("imgSrcA",uploadImgs); $("#img_upload_site_A").html("<img src='"+localId+"' class='img_upload_site' />");$("#imgAs").val(localId); $("#imgA").attr("value",serverId); } }); } });}); wx.error(function(res){// config信息驗證失敗會執行error函數,如簽名過期導致驗證失敗,具體錯誤信息可以打開config的debug模式查看,也可以在返回的res參數中查看,對于SPA可以在這里更新簽名。// alert(res.errMsg); }); // });}});
問題解答
回答1:經同事溝通,jssdk驗證由開始的觸發就驗證調整為進入頁面初始化驗證,在接下來的測試中有一部小米2s依舊不行另一臺可以。
相關文章:
1. python - beautifulsoup獲取網頁內容的問題2. Docker for Mac 創建的dnsmasq容器連不上/不工作的問題3. docker鏡像push報錯4. docker - 如何修改運行中容器的配置5. docker-machine添加一個已有的docker主機問題6. Android "1"=="1" 到底是true還是false7. fragment - android webView 返回后怎么禁止重新渲染?8. angular.js - 在終端中用yeoman啟用angular-generator報錯,求解?9. java - 請問在main方法中寫成對象名.屬性()并賦值,與直接參參數賦值輸錯誤是什么原因?10. docker不顯示端口映射呢?
