微信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. javascript - setIndex的作用2. java - 对于jsp技术,aspx技术的困惑3. javascript - [,null]是什么用法4. java - idea如何不显示.idea target这些文件夹5. docker - dcoker gitlab 如何修改主机地址?6. apache - 想把之前写的单机版 windows 软件改成网络版,让每个用户可以注册并登录。类似 qq 的登陆,怎么架设服务器呢?7. node.js - electron使用原生node模块8. java - log4j和slf4j 【配置有知道的么】9. dockerfile - [docker build image失败- npm install]10. docker内创建jenkins访问另一个容器下的服务器问题
