专栏首页XAI微信JSSDK分享到朋友圈和朋友自定义内容功能实现

微信JSSDK分享到朋友圈和朋友自定义内容功能实现

官网文档。请自行仔细阅读

https://mp.weixin.qq.com/wiki?action=doc&id=mp1421141115&t=0.6433997488875112#gaishu

本Demo是基于之前几个例子写的。本Demo相当简单。

JSSDK使用步骤

步骤一:绑定域名

先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。

备注:登录后可在“开发者中心”查看对应的接口权限。

步骤二:引入JS文件

在需要调用JS接口的页面引入如下JS文件,(支持https):http://res.wx.qq.com/open/js/jweixin-1.0.0.js

如需使用摇一摇周边功能,请引入 http://res.wx.qq.com/open/js/jweixin-1.1.0.js

备注:支持使用 AMD/CMD 标准模块加载方法加载

步骤三:通过config接口注入权限验证配置

wx.config({

    debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。

    appId: '', // 必填,公众号的唯一标识

    timestamp: , // 必填,生成签名的时间戳

    nonceStr: '', // 必填,生成签名的随机串

    signature: '',// 必填,签名,见附录1

    jsApiList: [] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2

});

通过Ajax请求Java后台返回数据

$(function(){
		$.ajax({
			type:'get',
			url:url,//填写自己的后台方法路径
			dataType:'jsonp',
			jsonpCallback: "js",
			success:function(sign){
			$("#url").val(sign.url);
			$("#tk").val(sign.jsapi_ticket);
			$("#appId").val(sign.appId);
			$("#nonceStr").val(sign.signature);
			$("#timestamp").val(sign.timestamp);
			$("#signature").val(sign.signature);
			wx.config({
			      debug: true,//必须开启的debug调试 以便查询错误,快速定位解决
			      //jsapi_ticket:sign.jsapi_ticket,
		      	      //url:sign.url,
			      appId: sign.appId,
			      timestamp: sign.timestamp,
			      nonceStr: sign.nonceStr,
			      signature: sign.signature,
                              //接口列表
			      jsApiList: [
			                'checkJsApi',
					        'onMenuShareTimeline',
					        'onMenuShareAppMessage',
					        'onMenuShareQQ',
					        'onMenuShareWeibo',
					        'hideMenuItems',
					        'showMenuItems',
					        'hideAllNonBaseMenuItem',
					        'showAllNonBaseMenuItem',
					        'translateVoice',
					        'startRecord',
					        'stopRecord',
					        'onRecordEnd',
					        'playVoice',
					        'pauseVoice',
					        'stopVoice',
					        'uploadVoice',
					        'downloadVoice',
					        'chooseImage',
					        'previewImage',
					        'uploadImage',
					        'downloadImage',
					        'getNetworkType',
					        'openLocation',
					        'getLocation',
					        'hideOptionMenu',
					        'showOptionMenu',
					        'closeWindow',
					        'scanQRCode',
					        'chooseWXPay',
					        'openProductSpecificView',
					        'addCard',
					        'chooseCard',
					        'openCard',
					        'configWXDeviceWiFi'
			      	]
				  });
			}
		});
});

获取“分享到朋友圈”按钮点击状态及自定义分享内容接口

wx.ready(function () {
        // 分享到朋友圈
	wx.onMenuShareTimeline({
           title: '测试朋友圈', // 商品名
	   link: 'http://www.qq.com', // 商品购买地址
           desc: '测试分享到朋友圈', // 描述
           imgUrl: 'http://135523_DRVV_1444646.jpg', // 分享的图标
           fail: function (res) {
		 alert(JSON.stringify(res));
		  }
            });
      });

“分享到朋友圈”按钮点击状态及自定义分享内容接口截图示意

图1显示为JSSDK接入成功。可以查看我的另一篇博文。

图2则是选择分享到朋友圈操作

图3显示点击后是分享到朋友圈还是转发给朋友的信息

图4显示为分享到朋友圈的一个操作

图5显示分享到朋友圈成功。如果取消。则显示取消信息

获取“分享给朋友”按钮点击状态及自定义分享内容接口

wx.ready(function () {
		    // 分享给朋友
		    wx.onMenuShareAppMessage({
		      title: '测试分享转发给朋友', // 商品名
		      desc: '测试分享转发给朋友', // 描述
		      link: 'http://www.qq.com', // 商品购买地址
		      imgUrl: 'http://stati_1444646.jpg', // 分享的图标
		      fail: function (res) {
		        alert(JSON.stringify(res));
		      }
		    });
});

获取“分享给朋友”按钮点击状态及自定义分享内容接口截图示意

图1显示为J选择分享给朋友。

图2则是选择分享到朋友打印的信息

图3显示点击后是分享到指定朋友的一个操作

图4显示为分享到朋友完成后的一个信息

微信JSSDK分享到 “朋友圈”转发给“朋友”例子就这些。JSSDK接口相对于来说难度较小。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 百度人脸识别API Java调用

    工具类下载http://pan.baidu.com/s/1jIuo0N8 小Demo查询。 1.官网文档必须看 http://ai.baidu.com/docs...

    小帅丶
  • 微信公众号发送模板消息 Java实现。

    本博文是测试公众号调用模板接口测试。请不要完全复制我的代码。里面的测试代码中有本人测试号的微信模板id。麻烦替换成自己的可以吗? 第一步:创建模板信息 ? ? ...

    小帅丶
  • Discuz! Ucenter API for JAVA

    Discuz! Ucenter API for JAVA   使用自己的项目于discuz联合登陆注册。 http://pan.baidu.com/s/1kTw...

    小帅丶
  • DevOps平台实践落地之构建管理详解

    ? 企业做DevOps平台,本质上是做企业的IT生产线,最终是实现整个企业级的数字化生产线。构建作为落地DevOps平台必不可少的环节之一,是持续集成、交付和...

    yuanyi928
  • 今日 Paper | 依赖性解析器;DNNs对图像损坏;高效人脸特征学习 ;虚拟试穿统一框架等

    论文名称:A Fast and Accurate Dependency Parser using Neural Networks

    AI科技评论
  • muduo网络库学习之EventLoop(七):TcpClient、Connector

    Connector 主要用于发起连接,并带有自动重连的功能,成员主要有一个channel_, boost::scoped_ptr<Channel> channe...

    s1mba
  • Spring Boot实现分布式微服务开发实战系列(二)

    昨天已经搭建好了SpringBoot基于Maven的基础父子级项目,今天开始进入项目分模块及分布式实现。首先我们基于昨天的项目,在父级工程下建lyn-sys,l...

    攻城狮的那点事
  • 前端使用puppeteer 爬虫生成《React.js 小书》PDF并合并

    puppeteer: Google 官方出品的 headless Chrome node 库 puppeteer github仓库 puppeteer API

    若川
  • CVPR 2019 | 一个高阶张量搞定整个全卷积网络

    对于识别、检测、语义分割、人体姿势检测等富有挑战性的任务,当前最佳性能通常是通过卷积神经网络(CNN)取得的。有证据表明,这些方法成功背后的关键特征是过度参数化...

    机器之心
  • 爱奇艺移动端网络优化实践分享:网络请求成功率优化篇

    由于移动网络的复杂性特点,编写高质量、体验好的具备网络通信能力的移动端应用(尤其是即时通讯这类网络质量高度敏感的应用)有很大的挑战性。

    JackJiang

扫码关注云+社区

领取腾讯云代金券