博客
关于我
微信分享JS-SDK
阅读量:434 次
发布时间:2019-03-06

本文共 1741 字,大约阅读时间需要 5 分钟。

微信JS-SDK是一套为开发者提供基于微信内网页开发的工具包,旨在帮助开发者高效地使用手机系统功能,同时融入微信特有的功能如分享、扫一扫、卡券支付等。

使用步骤

1. 绑定域名

在微信公众平台进入“公众号设置”中的“功能设置”填写“JS接口安全域名”。该域名需与当前页面的JS安全域名一致。

2. 引入JS文件

在需要调用JS接口的页面中引入如下JS文件:

3. 注入权限验证配置

所有需要使用JS-SDK的页面必须先注入配置信息,否则将无法调用。通过config接口进行权限验证配置:

wx.config({  debug: true, // 开启调试模式  appId: '', // 必填,公众号唯一标识  timestamp: '', // 必填,生成签名的时间戳  nonceStr: '', // 必填,生成签名的随机串  signature: '', // 必填,签名  jsApiList: [] // 必填,需要使用的JS接口列表});

4. 处理成功验证

通过ready接口处理成功验证:

wx.ready(function() {  // config信息验证后执行ready方法  // 所有接口调用必须在config验证后执行});

5. 处理失败验证

通过error接口处理失败验证:

wx.error(function(res) {  // 验证失败时执行error函数  // 可以在这里更新签名或处理相关错误信息});

6. 检查是否为微信浏览器

判断是否是微信:

var isWeixin = function() {  var ua = navigator.userAgent.toLowerCase();  return ua.match(/MicroMessenger/i) === "micromessenger";};

如果是微信浏览器,则请求后端接口获取签名并配置config:

if (isWeixin()) {  var url = location.href;  $.post('/api/weixin/getSignpackage', { url: url }, function(data) {    var option = JSON.parse(data);    wx.config({      appId: option.appId,      timestamp: option.timestamp,      nonceStr: option.nonceStr,      signature: option.signature,      jsApiList: []    });  });}

微信分享

微信分享功能通过更新分享数据接口进行操作。原有的wx.onMenuShareTimeline等接口已废弃,建议使用新的接口:

  • wx.updateAppMessageShareData:用于自定义“分享给朋友”及“分享到QQ”按钮的分享内容(支持1.4.0及以上版本)。
  • wx.updateTimelineShareData:用于自定义“分享到朋友圈”及“分享到QQ空间”按钮的分享内容(支持1.4.0及以上版本)。

分享设置

  • 需在用户点击分享按钮前先调用分享接口:
    • 更新AppMessageShareData:
    wx.updateAppMessageShareData({  title: '', // 分享标题  desc: '', // 分享描述  link: '', // 分享链接,需与当前页面域名一致  imgUrl: '', // 分享图标  success: function() {}});
    • 更新TimelineShareData:
    wx.updateTimelineShareData({  title: '', // 分享标题  link: '', // 分享链接,需与当前页面域名一致  imgUrl: '', // 分享图标  success: function() {}});

相关文档

如需了解更多技术细节,可参考微信官方文档或相关开发者社区,获取最新的API接口和使用示例。

转载地址:http://wqiuz.baihongyu.com/

你可能感兴趣的文章
NIO笔记---上
查看>>
NIO蔚来 面试——IP地址你了解多少?
查看>>
NISP一级,NISP二级报考说明,零基础入门到精通,收藏这篇就够了
查看>>
NISP国家信息安全水平考试,收藏这一篇就够了
查看>>
NIS服务器的配置过程
查看>>
Nitrux 3.8 发布!性能全面提升,带来非凡体验
查看>>
NiuShop开源商城系统 SQL注入漏洞复现
查看>>
NI笔试——大数加法
查看>>
NLog 自定义字段 写入 oracle
查看>>
NLog类库使用探索——详解配置
查看>>
NLP 基于kashgari和BERT实现中文命名实体识别(NER)
查看>>
NLP 模型中的偏差和公平性检测
查看>>
Vue3.0 性能提升主要是通过哪几方面体现的?
查看>>
NLP 项目:维基百科文章爬虫和分类【01】 - 语料库阅读器
查看>>
NLP_什么是统计语言模型_条件概率的链式法则_n元统计语言模型_马尔科夫链_数据稀疏(出现了词库中没有的词)_统计语言模型的平滑策略---人工智能工作笔记0035
查看>>
NLP三大特征抽取器:CNN、RNN与Transformer全面解析
查看>>
NLP学习笔记:使用 Python 进行NLTK
查看>>
NLP度量指标BELU真的完美么?
查看>>
NLP的不同研究领域和最新发展的概述
查看>>
NLP的神经网络训练的新模式
查看>>