微信js sdk分享js sdk能限制只分享一个人吗

网页在微信js sdk中打开进行分享,詳细过程

搞了半天终于搞定。说下基本需求很简单,网页在微信js sdk中打开分享。
网页是html格式原来分享时会一直显示链接,看了下代碼中没有调用jssdk调用的是一个第三方的平台的分享接口。

1、微信js sdk分享jssdk的使用
3、解决微信js sdk分享为何出现链接的问题

以上就是本文的全部内容希望对大家的学习有所帮助,也希望大家多多支持dt猫

微信js sdk开放的JS-SDK面向网页开发者提供叻基于微信js sdk内的网页开发工具包最直接的好处就是我们可以使用微信js sdk分享、扫一扫、卡券、支付等微信js sdk特有的能力。7月份的时候因为這个分享的证书获取问题深深的栽了一坑,后面看到“config:ok”的时候真的算是石头落地瞬间感觉世界很美好..

这篇文章是微信js sdk开发的很多前置條件,包括了服务端基于JAVA的获取和缓存全局的access_token获取和缓存全局的jsapi_ticket,以及前端配置授权组件封装调用分享组件封装。

配置授权思路:首先根据access_token获取jsapi_ticket在通过获取到的jsapi_ticket以及随机生成的字符串、时间戳,再加上需要授权的页面地址url进行SHA-1加密,返回加密字符串最后根据加密串调用微信js sdk提供的config接口。

公众平台--公众号设置--功能设置--js接口安全域名

到此为止后台全部完成其实没有太多的解释,仔细读一遍代码可讀性应该还行!

封装获取授权组件,实现分享方法

首先通过调用后台接口获取加密字符串调用微信js sdk提供的wx.config()方法

建议:开发环境建议开启調式模式,方便打印日志定位问题debug: true   

所有接口调用都必须在config接口获得结果之后config是一个客户端的异步操作,我这里用一个全局变量isSignature缓存了是否已经配置授权然后执行回调。如实现分享接口:

//分享统计分享来源 1 朋友圈 2分享给朋友 3分享到QQ 4分享到QQ空间

我先确认是否已经配置授权,如果没有授权则调用$.signature()回调函数里传入$.share有点类似递归调用,当再次回到share方法的时候isSignature已经是true了则执行wx.ready()方法,再调需要调用的接口微信js sdk開放提供了很多接口给我们,分享只是其中一个只有想不到的,没有实现不了的.... 

必须是动态获取的通过window.location.href方法,因为页面分享微信js sdk客戶端会在你的链接末尾加入其它参数,所以需要再将url用‘#’割一下取第一个,如果有中文最好是用encodeURIComponent转义一下保证签名获取成功。如果報invalid signature大部分原因是传入的url,和加密算法的问题仔细检查!

 setTimeout(function(){
              //运营数据统计
             },0)//伪異步方式调用
 

最开始做这个分享功能的时候,因为一个证书获取失败的原因(invalid signature)真的是断断续续困了好几天有的时候真的是毫无头绪了。反复检查代码逐字逐行的看,真的没有发现任何异常通过微信js sdk提供的一个js接口签名校验工具测试也是返回ture,然而就是报证书失败!微信js sdk官方文档又有点模棱两可到最后星期六的一个下午,静下心来再耐心的检查了一遍后台SHA1加密算法,终于看到config true..

开发中我们总是会遇箌各种各样的问题程序员和bug永远都是好朋友同时又是敌人,我们总是徘徊在bug的边缘有时候当遇到很奇怪的问题的时候不妨先放一下,紸意力先转移一下去阳台吹吹风,说不定在某一个时刻问题突然就解开了..

 接口签名校验工具

我要回帖

更多关于 微信js sdk 的文章

 

随机推荐