iframe中如何使用微信API

搜索本文的其他小伙伴,可能也会搜索类似的关键词,我就先写着,方便遇到相同问题的朋友寻找本文答案:

1、layui弹出层中无法使用微信sdk,但单独抽出页面使用却是正常的;
2、iframe中无法使用微信api
3、iframe 微信 sdk api

ok,上面相当于描述了所有跟本文相关的关键词与搜索问题,接下来出干货。

首先感谢这篇文章,让我找到解决办法,不过是在墙外搜到的,大家如果打不开,也可以看我下面更加详细的答案:

先直接给出造成这个问题的原因:

微信api是不能在iframe中进行签名认证的!

接下来就是解决方法:

把签名认证放到主页A(这里说的主页,即iframe页面所依托的页面),而微信的api放在子页B(即iframe页面),然后我们来看下具体怎么操作。

举栗:

我要调用的是wx.chooseImage()这个api,那么我要把签名认证写在主页A:


**A.html**









接下来是B页面调用api:


B.html




代码粘贴进来好像横向范围有点长,如果有需要看得仔细点的,可以复制到sublime,然后右键JS Format一下就ok了(前提是你安装了这个插件)。

到这里就完全实现了在iframe中使用微信API的功能。值得注意的是:

你会发现我在wx.chooseImage()和wx.uploadImage()前面写了一个“parent.”,这个属性的调用对象是window,因此你也可以写为window.parent.xxx,具体什么作用你可以百度。

你可能感兴趣的:(iframe中如何使用微信API)