JSON

微信公众平台开发:微信公众号开发平台教程,技术文摘

字号+ 作者:H5之家 来源:H5之家 2015-11-12 15:39 我要评论( )

script type=

> 微信公众平台开发 > 正文 微信分享到朋友圈自定义图文 2015-11-05            作者:wangjiaojiao    我要投稿

<script type="text/javascript"> $(function(){ getUrl(); }); function getUrl(){ $.ajax({ url:'/wechat/share', type:'get', data:{ "url": encodeURIComponent(location.href.split('#')[0]) }, success:function(json){ json = JSON.parse(json); if(json.success == 1){ if(json.data){ wx.config({ debug: true, appId: "wx043d1b90c7bd4cfa", timestamp: json.data.timestamp, nonceStr: json.data.nonceStr, signature: json.data.signature, jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage'] }); wx.error(function(res){ alert(res.errMsg); }) wx.ready(function(){ var encodeurl=location.href.split('#')[0]; wx.onMenuShareTimeline({ title: '闺蜜分享1000万现金红包,豪礼大放送!', desc: "您的闺蜜为您送来20元现金红包,机会难得,快来领取......", link: encodeurl, //分享的url以http或https开头 。具体分享的地址应该不需要编码,至少百度分享里面就是直接的url imgUrl: "https://m.guimilicai.com/images/cent_cbg.png" }); wx.onMenuShareAppMessage({ title: '闺蜜分享1000万现金红包,豪礼大放送!', desc: "您的闺蜜为您送来20元现金红包,机会难得,快来领取......", link: encodeurl, imgUrl: "https://m.guimilicai.com/images/cent_cbg.png", }); }); } } }, error:function(){ alert(false); } }) } </script> </body> </html>

 

后台返回的数据

"success": 1, "code": null, "comment": null, "data": { "signature": "c556057efe17da230832abc07d1b287df9991278", "jsapi_ticket": "bxLdikRXVbTPdHSM05e5u5KK_6aepzSJbcorNNqO52PqNBTx1sGMuo_-iTq75JYvvkuyTsKmTOOyxSVv9NTq-g", "url": "", "nonceStr": "eff876fc-f300-426d-99b5-20c7d15694b7", "timestamp": "1446539973" }, "resultList": null /wechat/share
参数url

 

微信jsdk说明文档 附录5

(确保你获取用来签名的url是动态获取的,动态页面可参见实例代码中php的实现方式。如果是html的静态页面在前端通过ajax将url传到后台签名,前端需要用js获取当前页面除去'#'hash部分的链接(可用location.href.split('#')[0]获取,而且需要encodeURIComponent),因为页面一旦分享,微信客户端会在你的链接末尾加入其它参数,如果不是动态获取当前链接,将导致分享后的页面签名失败。

 

 

因为你分享到微信的页面会有好多个
所以你要分享的url也会有好多个
所以后台不可能写死

所以你要把你当前页面的url地址去除后面的#然后编码ajax传给后台
后台或者微信那边会对这个url进行解码

然后后台通过他自身从微信端口获得的jsapi_ticket、noncestr、timestamp和你提供的动态url进行签名
就得到了动态的签名

 然后所有需要的东西都有了,后台返回个json给你

 

后台返回的数据

"success": 1, "code": null, "comment": null, "data": { "signature": "c556057efe17da230832abc07d1b287df9991278", "jsapi_ticket": "bxLdikRXVbTPdHSM05e5u5KK_6aepzSJbcorNNqO52PqNBTx1sGMuo_-iTq75JYvvkuyTsKmTOOyxSVv9NTq-g", "url": "", "nonceStr": "eff876fc-f300-426d-99b5-20c7d15694b7", "timestamp": "1446539973" }, "resultList": null /wechat/share
参数url


你把json里面的数据作为微信分享配置的参数进行配置

然后在wx.ready里去调用微信相应的功能接口(你这里调用的有分享到朋友圈和分享到微信朋友这两个接口)

在接口里面你再去写一些标题啊,描述啊之类的
签名使用的url是用来追踪你页面的

 

 

 

 

 

 

 

 


点击复制链接 与好友分享!回本站首页 上一篇:微信模板消息测试 下一篇: 相关文章

方倍微信公众平台开发(97) 图文消息

【玩转微信公众平台之十】 图文消息回

微信公共服务平台开发(.Net 的实现)

沫尘[c#]asp.net开发微信公众平台(5)微

C#开发微信门户及应用(3)--文本消息和

Java与微信不得不说的故事——实现图文

微信应用js-sdk自定义分享图文

微信回复文本消息和图文消息

方倍微信公众平台开发(90) 分享到朋友

微信朋友圈分享js代码最新2015年无错版

图文推荐

文章 读书

· Win2000下关闭无用端口 · 禁止非法用户登录综合设置 [win9x篇] · 关上可恶的后门——消除NetBIOS隐患 · 网络入侵检测系统 · 潜伏在Windows默认设置中的陷井 · 调制解调器的不安全 · 构建Windows 2000服务器的安全防护林 · SQL Server 2000的安全配置 · 黑客攻防技术宝典:Web实战篇(第2版) · 超级网管员——网络安全 · 代码大全(第二版) · 软件之道:软件开发争议问题剖析 · CSS插件工具箱 · CSS入门经典(第3版) ·  · CMMI+敏捷整合开发

点击排行

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • JSON学习笔记 陈建杭个人博客

    JSON学习笔记 陈建杭个人博客

    2016-01-17 12:22

  • golang的json操作

    golang的json操作

    2015-11-22 10:36

  • 信息安全博客

    信息安全博客

    2015-11-18 13:11

  • Python導出Excel為Lua/Json/Xml實例教程(一):初識Python

    Python導出Excel為Lua/Json/Xml實例教程(一):初識Python

    2015-11-15 16:39

网友点评