微信公众号开发-JS-SDK分享功能(java)

此篇文章是在做微信分享的时候查阅借鉴的相关的文章所做的总结,刚开始没有接触过,一脸懵逼,不知道从哪里下手,咨询了很多同学朋友,总算是有一点苗头,现在记录下来,方便自己以后查阅,以免忘记。

注意点:

1、分享的时候,前端一定要传他当前页面的url(location.href.split('#')[0]),并且必须是截取#之前的那一段给后台,否则签名不成功,会导致分享失败(当时入得坑,一直没发现,幸亏别人提醒);

2、可以使用微信开发工具进行测试,查看问题出在哪里(如何使用后续补上)

3、由于access_token和ticket是有有效期限制的,所以一般都需要保存起来,避免每次都请求新的access_token和ticket,这里我是放入到了redis缓存当中,设定有效时间。

微信分享的大致流程:

网页向java-web请求微信分享,然后通过公众号的appid和secret获取微信的access_token,然后通过access_token获取微信ticket,微信返回的ticket生成时间戳和nonceStr,加上当前的url和ticket进行签名生成signature,然后将 appid,timestamp,nonceStr,signature返回给前端页面,前端通过config接口注入权限验证配置即可(可以使用微信开发工具测试)

具体开发流程(配置和后台java部分):

如果是开发阶段,没有正式的公众号可以使用的话,可以申请一个测试公众号,进行开发测试相关的微信功能。测试公众号的链接:http://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index

一、首先进入公众号,设置相关内容:

1、appID和appsecret是申请的时候就自动生成的;

2、接口配置信息设置里面,URL是域名所在的服务器接入微信服务器的接口地址,需要自己写一个接口;token的值可以自己定义,但是需要与上面接入微信服务器接口里面设定的token保持一致,否则调用微信里面的相关接口会不成功(相关代码在下面)

3、JS接口安全域名设置,这里的域名必须是你js所在的服务器的域名

具体配置示例如图:



二、相关java代码如下:

1.接入微信服务器的接口代码:

先导包:


controller里面的接口方法:

1.以下是工具类:


2.分享的java代码(最主要是提供前台所需要的appid,timestamp,nonceStr,signature):





2.然后在serviceimpl里面直接调用:


3.controller里面调用具体的service方法

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值