这篇文章将为大家详细讲解有关微信开发中分享接口的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
最近在做微信服务号开发,简单总结一下,便于自己学习积累和分享给大家:
环境介绍:
Spring+ Spring MVC +Mybatis
开发语言:
JAVA
微信公众平台的开发中,微信只公布了一个基于Http协议的接口和加解密的算法sdk,在开发的过程中可以自己根据需求来配置数据,调用相关接口,也可以引用比较成熟的基于java语言的微信公众号sdk。笔者引用的是目前比较流行的
weixin-java-tools
可以参考:点击打开链接
项目中引入了 weixin-java-mp-2.9.0.jar 和 weixin-java-common-2.9.0.jar 就可直接调用相关功能接口和完成jssdk认证
分享接口:
1.后台准备:
建一个公用控制类: WeXinJsSdkController ,通过ajax 访问完成jssdk认证:
@Controller @RequestMapping("jssdk") public class WeXinJsSdkController { @Autowired private WxMpService wxMpService; @RequestMapping(value = "/config", method = RequestMethod.GET) @ResponseBody public WxJsapiSignature wxJsSdkConfig(HttpServletRequest request,String url) { try { // 直接调用wxMpServer 接口 WxJsapiSignature wxJsapiSignature = wxMpService.createJsapiSignature(url); return wxJsapiSignature; } catch (WxErrorException e) { return null; } } }
2.页面初始化js 配置相关接口:
<%--通过config接口注入权限验证配置--%> /* 初始化jssdk 分享功能 */ $.get("${basePath}/jssdk/config.do",{url:window.location.href},function(data,status){ if(status == "success"){ wx.config({ debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId: data.appId, // 必填,公众号的唯一标识 timestamp: data.timestamp, // 必填,生成签名的时间戳 nonceStr: data.nonceStr, // 必填,生成签名的随机串 signature: data.signature,// 必填,签名,见附录1 jsApiList: ['checkJsApi', 'onMenuShareTimeline', 'onMenuShareAppMessage', 'onMenuShareQQ'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); wx.ready(function(){ // layer.msg("jssdk初始化成功"); // config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作, //所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。 <%-- 分型内容 分享给朋友、朋友圈、 --%> var shareData = { title: '${requestScope.atc.trainsubject}', desc: '${description}', // link: 'https://www.baidu.com', // 分享域名要和当前域名保持一致!! imgUrl: 'http://www.cyfd.cn/tektcrm/EventNoti/images/attendance.png', success: function (res) { // alert('已分享'); }, cancel: function (res) { // alert('已取消'); }, fail: function (res) { // alert(JSON.stringify(res)); } }; <%--分享给朋友接口--%> wx.onMenuShareAppMessage(shareData); <%--分享到朋友圈接口--%> wx.onMenuShareTimeline(shareData); <%--分享到QQ朋友接口--%> wx.onMenuShareQQ(shareData); }); wx.error(function(res){ // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看, //也可以在返回的res参数中查看,对于SPA可以在这里更新签名。 // layer.msg(res); }); } },"json");
关于“微信开发中分享接口的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。