微信jssdk在iframe页面失效问题的解决措施

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

微信jssdk在iframe页⾯失效问题的解决措施
项⽬需求
微信端添加拍品的页⾯有照⽚上传功能,上传时打开⼀个iframe,该页⾯⽤canvas加载⽤微信jssdk的选择图⽚接⼝选择的图⽚(这⾥微信会返回⼀个形如weixin://xxxx的localid,可直接放在img的src⾥进⾏预览),可进⾏放⼤缩⼩移动旋转等操作,点击确定按钮将编辑好的图⽚发送到服务器存成图⽚
遇到的问题
当⼦页⾯功能开发完成后,在主页⾯通过iframe打开⼦页⾯,⽆法调⽤微信jssdk接⼝中的选择图⽚接⼝,其他jssdk中的接⼝也⽆法正常⼯作。

但是单独打开⼦页⾯可以正常⼯作,主页⾯的微信分享等也是正常的。

解决思路
通过测试可以在主页⾯进⾏签名验证,⼦页⾯不添加jssdk的签名信息。

需要调⽤jssdk接⼝时,⽐如图⽚选择接⼝,在jssdk的函数前加parent.,即调⽤⽗页⾯的此函数,经过测试,功能可正常调⽤。

parent.wx.chooseImage({
success: function (res) {
//upload_success(res.localIds);
}
值得⼀提的是,微信jssdk看似功能强⼤,但是bug不少,真正在项⽬中使⽤,经不起推敲。

虽然解决的此问题,新的问题⼜来了,canvas导出图⽚不能跨域。

最终还是没有⽤微信的接⼝来实现需求。

以上所述是⼩编给⼤家介绍的微信jssdk在iframe页⾯失效问题的解决措施,希望对⼤家有所帮助!。

相关文档
最新文档