博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
微信JS-SDK接口调用及填坑攻略
阅读量:4100 次
发布时间:2019-05-25

本文共 2859 字,大约阅读时间需要 9 分钟。

/**

 * 微信公众平台开发文档
 * 配置安全域名
 *
 * 引入微信jssdk文档
 * 获取签名(后台配合返回前台config)
 * 通过ready接口处理成功验证 (所有接口调用都必须在config接口获得结果之后)
 * 调取相应的接口
 * 

 * */

1.先配置安全域名,具体操作见文档

2.引入js文件:

3.通过config接口注入权限验证配置(配置需要的值需要向后台打请求返回)

wx.config({        debug: true,     // 开启调试模式(true),调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。        appId: '',       // 必填,公众号的唯一标识	timestamp: '',     // 必填,生成签名的时间戳	nonceStr: '',     // 必填,生成签名的随机串	signature: ''      // 必填,签名	jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage'],     // 必填,需要使用的JS接口列表(比如分享到微信,分享到朋友圈)});

4.通过ready接口处理成功验证

wx.ready(function(){    // config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。});

5.通过error接口处理config失败验证

wx.error(function(res){    // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。});

 

以上就是微信官方文档给出的分享的具体操作步骤,下面是文件中具体放置位置:注意:开发的时候最好把底下的debug设置为true,在移动端测试的时候有错误会alert出来,很方便

 

 

//下面是请求配置成功以后的操作wx.config({	debug: false,     // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。	appId: '',     // 必填,公众号的唯一标识	timestamp: '' ,     // 必填,生成签名的时间戳	nonceStr: '',     // 必填,生成签名的随机串	signature: '',    // 必填,签名	jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage', 'onMenuShareQQ'],     // 必填,需要使用的JS接口列表(这里列出的是常用的分享接口,微信,朋友圈,qq)});wx.ready(function(res){       //config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后	wx.onMenuShareTimeline({   //分享到朋友圈	    title: '',      // 分享标题	    link: , '',     // 或路径分享链接,该链接域名必须与当前页面对应的公众号JS安全域名一致	    imgUrl: '',     // 分享图标	    success: function () {	        // 用户确认分享后执行的回调函数            },	    cancel: function () {	        // 用户取消分享后执行的回调函数	    }	});	wx.onMenuShareAppMessage({   //分享到微信好友		//具体配置看文档	});	wx.onMenuShareQQ({      //分享到QQ						});});wx.error(function(res){    //config验证失败会执行的方法});wx.config({	debug: false,     // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。	appId: '',     // 必填,公众号的唯一标识	timestamp: '' ,     // 必填,生成签名的时间戳	nonceStr: '',     // 必填,生成签名的随机串	signature: '',    // 必填,签名	jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage', 'onMenuShareQQ'],     // 必填,需要使用的JS接口列表(这里列出的是常用的分享接口,微信,朋友圈,qq)});wx.ready(function(res){       //config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后	wx.onMenuShareTimeline({   //分享到朋友圈	    title: '',      // 分享标题	    link: , '',     // 或路径分享链接,该链接域名必须与当前页面对应的公众号JS安全域名一致	    imgUrl: '',     // 分享图标	    success: function () {	        // 用户确认分享后执行的回调函数            },	    cancel: function () {	        // 用户取消分享后执行的回调函数	    }	});	wx.onMenuShareAppMessage({   //分享到微信好友		//具体配置看文档	});	wx.onMenuShareQQ({      //分享到QQ						});});wx.error(function(res){    //config验证失败会执行的方法});

 

坑点:

①分享失败

解决:最好分享当前页面链接,该链接域名必须与当前页面对应的公众号js安全域名一致

②分享消息图标不显示

解决:分享的图标链接,应该写域名下的绝对路径(不然显示不出来)

需要QQ分享的看这里:

最近刚接触,记录不到的地方,还请提出~~~

 

转载地址:http://fizsi.baihongyu.com/

你可能感兴趣的文章
Java8 HashMap集合解析
查看>>
自定义 select 下拉框 多选插件
查看>>
fastcgi_param 详解
查看>>
poj 1976 A Mini Locomotive (dp 二维01背包)
查看>>
MODULE_DEVICE_TABLE的理解
查看>>
No devices detected. Fatal server error: no screens found
查看>>
db db2_monitorTool IBM Rational Performace Tester
查看>>
postgresql监控工具pgstatspack的安装及使用
查看>>
【JAVA数据结构】双向链表
查看>>
【JAVA数据结构】先进先出队列
查看>>
谈谈加密和混淆吧[转]
查看>>
乘法逆元
查看>>
Objective-C 基础入门(一)
查看>>
通过mavlink实现自主航线的过程笔记
查看>>
Flutter Boost的router管理
查看>>
iOS开发支付集成之微信支付
查看>>
Koa2框架原理解析和实现
查看>>
C++模板
查看>>
【C#】如何实现一个迭代器
查看>>
【C#】利用Conditional属性完成编译忽略
查看>>