微信jssdk分享(附代码)
老规矩---demo图: (注释:微信分享只支持右上角三个点触发)
======>
老规矩上菜:
1. 这边我封装了 share.js
function allSharefun(param) {
console.log(param)
var tagUrl = location.href;
tagUrl = encodeURIComponent(tagUrl);
console.log(tagUrl)
//注释: 传参当前页面url给自己的后台接口, 获取 配置的config所需参数
$.get("xxxxx此处自己后台接口?url=" + tagUrl, function(res) {
console.log(res)
console.log(res.result.nonceStr)
if (res.error == '00') {
console.log(res)
wx.config({
debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
appId: 'xxxxxxxxx', // 必填,公众号的唯一标识
timestamp: res.result.timestamp, // 必填,生成签名的时间戳
nonceStr: res.result.nonceStr, // 必填,生成签名的随机串
signature: res.result.signature, // 必填,签名
jsApiList: [
'onMenuShareTimeline',
'onMenuShareAppMessage',
'onMenuShareQQ',
'onMenuShareQZone',
'onMenuShareWeibo'
] // 必填,需要使用的JS接口列表
});
// config之后会自动调用ready方法
wx.ready(function() {
// 验证接口是否注册完成
wx.checkJsApi({
jsApiList: [
'onMenuShareTimeline',
'onMenuShareAppMessage',
'onMenuShareQQ',
'onMenuShareQZone',
'onMenuShareWeibo',
"scanQRCode"
],
success: function(res) {
console.log("888");
}
});
wx.onMenuShareTimeline({
title: param.title, // 分享标题
desc: param.content, // 分享描述
link: param.url, // 分享链接
imgUrl: param.pic, // 分享图标
success: function() {
// 用户确认分享后执行的回调函数
alert('已分享');
},
cancel: function() {
// 用户取消分享后执行的回调函数
alert('已取消');
}
});
//获取“分享给朋友”
wx.onMenuShareAppMessage({
title: param.title, // 分享标题
desc: param.content, // 分享描述
link: param.url, // 分享链接
imgUrl: param.pic, // 分享图标
type: 'link', // 分享类型,music、video或link,不填默认为link
dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
success: function() {
// 用户确认分享后执行的回调函数
// alert('已分享');
//window.location.href = "https://www.baidu.com";
},
cancel: function() {
// 用户取消分享后执行的回调函数
// alert('已取消');
}
});
//获取“分享到QQ”
wx.onMenuShareQQ({
title: param.title, // 分享标题
desc: param.content, // 分享描述
link: param.url, // 分享链接
imgUrl: param.pic, // 分享图标
success: function() {
// 用户确认分享后执行的回调函数
// alert('已分享');
},
cancel: function() {
// 用户取消分享后执行的回调函数
// alert('已取消');
}
});
//获取“分享到QQ空间”
wx.onMenuShareQZone({
title: param.title, // 分享标题
desc: param.content, // 分享描述
link: param.url, // 分享链接
imgUrl: param.pic, // 分享图标
success: function() {
// 用户确认分享后执行的回调函数
// alert('已分享');
},
cancel: function() {
// 用户取消分享后执行的回调函数
// alert('已取消');
}
});
//获取“分享到腾讯微博”
wx.onMenuShareWeibo({
title: param.title, // 分享标题
desc: param.content, // 分享描述
link: param.url, // 分享链接
imgUrl: param.pic, // 分享图标
success: function() {
// 用户确认分享后执行的回调函数
// alert('已分享');
},
cancel: function() {
// 用户取消分享后执行的回调函数
// alert('已取消');
}
});
});
wx.error(function(res) {
// config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
// console.log(res,"rrr")
});
// 开始分享
}
})
}
2. share.html页面 引入 share.js
//引入jssdk
// 分享的 三要素----------------------------------------------
var shareData = {
url: window.location.href, //当前页面路径
title: '分享的标题xxxx',
content: '描述xxxx',
pic: 'xxxxpic' //图片
}
//调用 share.js中的 函数 并且传入参数
allSharefun(shareData)
3.前提, 你已经配置好微信公众号的js安全域名等等!!!
需要配置ip白名单和安全域名


2 更多参考链接:https://www.jianshu.com/p/bef8675130cb
3 官网链接: https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html#10

微信jssdk分享(附代码)的更多相关文章
- 微信JS-SDK分享功能的.Net实现代码
JS-SDK接口是什么? 为了方便开发者实现微信内的网页(基于微信浏览器访问的网页)功能,比如拍照.选图.语音.位置等手机系统的能力,并方便开发者直接使用微信分享.扫一扫等微信特有的能力,微信推出了J ...
- 微信JS-SDK“分享信息设置”API及数字签名生成方法(NodeJS版本)
原文:微信JS-SDK"分享信息设置"API及数字签名生成方法(NodeJS版本) 先上测试地址以示成功: 用微信打开下面地址测试 http://game.4gshu.com/de ...
- 微信jssdk分享链接给好友,图标只能自己看到,对方看不到!
问题描述:调用微信jssdk分享接口时,所有参数均正常的情况下(排除参数错误的情况),分享给好友后,其中的小图标自己看得到,接收到分享的好友看不到小图标! (如上图所示!) 出现上述问题的原因:本人猜 ...
- 微信JSSDK分享朋友圈微信自定义分享接口
服务项目 新手技术咨询 企业技术咨询 定制开发 服务说明 QQ有问必答 QQ.微信.电话 微信开发.php开发,网站开发,系统定制,小程序开发 价格说明 200元/月 1000/月 商议 ...
- 微信JSSDK分享功能详解
本文以微信分享到朋友圈,分享给微信好友为例为参考,进行调用测试,想添加其他的功能,自行查看开发人员文档即可 工欲善其事,必先利其器,好好利用下边的帮助工具,都是腾讯给开发人员的工具 1.微信开发者说明 ...
- 微信jssdk分享功能,jssdk成功调用,分享内容自定义失败
前提:调用微信jssdk分享功能,通过微信开发者工具调试,调用正常,无任何报错信息. 问题:调用成功,且开发者工具正常显示,但是通过真机调试,分享出去后,自定义内容失效,为微信自动获取的默认内容!截止 ...
- 微信JS-SDK分享接口示例中jsapi_ticket.php和access_token.php说明
关于如何使用微信JS-SDK,可以查看官方介绍说明:查看链接 在使用分享接口的过程中,查看了示例代码,其中包含两个文件jsapi_ticket.php和access_token.php,记录一下这两个 ...
- 微信jssdk分享功能开发
先理解下分享: 在app端 ,经常能看见 分享按钮的功能,(分享给朋友,分享到朋友圈,分享到QQ空间等等): https://open.weixin.qq.com/(微信开发平台),这需要到开放平台注 ...
- 企业微信jssdk分享接口管理系统
服务项目 新手技术咨询 企业技术咨询 定制开发 服务说明 QQ有问必答 QQ.微信.电话 微信开发.php开发,网站开发,系统定制,小程序开发 价格说明 200元/月 1000/月 商议 ...
随机推荐
- tp 防止xss攻击
跨站脚本攻击(Cross Site Scripting),攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的. ...
- htm5基本学习
HTML学习 1.HTML概念 1.1.HTML是什么 Hyper Text Markup Language (超文本标记语言)包括:文字.图片.音频.视频.动画等. 1.2.HTML优势 所有浏览器 ...
- BSOJ7526口胡
直觉告诉我一般情况下,询问古怪的题都是分块,但是这一类题不太一样. 思考一个奇怪的暴力,每次询问的时候询问 \(f(1,k),f(2,k+1),f(3,k+2),...f(n-k+1,n)\),然后加 ...
- c++ set与unordered set的区别
c++ std中set与unordered_set区别和map与unordered_map区别类似,其底层的数据结构说明如下: 1.set基于红黑树实现,红黑树具有自动排序的功能,因此map内部所有的 ...
- WPF之VisualTreeHelper
/// <summary> /// </summary> /// <typeparam name="T">< ...
- python3生成10个成绩列表,求其平均分
import random alist = [random.randint(45,101) for _ in range(10)] #在[45.101)之间生成10个随机数 print(alist) ...
- Linux系统常用指令
建立一个文件或文件夹的软链接: ln -s 原名 软链接名 软链接就类似Windows下的"快捷方式",访问它其实访问的是它指向的内容. git仓库操作 1.通常远程操作的第一步, ...
- 你应该知道的Redis过期键和过期策略
今天,我和大家分享一篇关于 Redis 有关过期键的内容,主要有四个内容: 如何设置过期键 如何取消设置的过期时间 过期键的过期策略是怎样的 RDB.AOF 和复制对过期键的处理又是怎样的 设置键的生 ...
- Flask(Jinja2) 服务端模板注入漏洞
原理 参考文章: https://www.blackhat.com/docs/us-15/materials/us-15-Kettle-Server-Side-Template-Injection-R ...
- vs 2019 社区版 .net core 5.0 之 .net core ef 迁移问题方案
问题一:Add-Migration 时出现 此类问题一般都是模型类主键标识问题增加KEY即可解决 报错: The entity type 'xxxx' requires a primary key t ...