JSSDK说明文档
JS-SDK说明文档
目录 ∙ 1 概述 ∙ 1.1 JSSDK使用步骤 ∙ 1.1.1 步骤一:绑定域名 ∙ 1.1.2 步骤二:引入JS文件 ∙ 1.1.3 步骤三:通过config接口注入权限验证配置 ∙ 1.1.4 步骤四:通过ready接口处理成功验证 ∙ 1.1.5 步骤五:通过error接口处理失败验证 ∙ 1.2 接口调用说明 ∙ 2 基础接口 ∙ 2.1 判断当前客户端版本是否支持指定JS接口 ∙ 3 分享接口 ∙ 3.1 获取“分享到朋友圈”按钮点击状态及自定义分享内容接口 ∙ 3.2 获取“分享给朋友”按钮点击状态及自定义分享内容接口 ∙ 3.3 获取“分享到QQ”按钮点击状态及自定义分享内容接口 ∙ 3.4 获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口 ∙ 4 图像接口 ∙ 4.1 拍照或从手机相册中选图接口 ∙ 4.2 预览图片接口 ∙ 4.3 上传图片接口 ∙ 4.4 下载图片接口 ∙ 5 音频接口 ∙ 5.1 开始录音接口 ∙ 5.2 停止录音接口 ∙ 5.3 监听录音自动停止接口 ∙ 5.4 播放语音接口 ∙ 5.5 暂停播放接口 ∙ 5.6 停止播放接口 ∙ 5.7 监听语音播放完毕接口 ∙ 5.8 上传语音接口 ∙ 5.9 下载语音接口 ∙ 6 智能接口 ∙ 6.1 识别音频并返回识别结果接口 ∙ 7 设备信息 ∙ 7.1 获取网络状态接口 ∙ 8 地理位置 ∙ 8.1 使用内置地图查看位置接口 ∙ 8.2 获取地理位置接口 ∙ 9 界面操作 ∙ 9.1 隐藏右上角菜单接口 ∙ 9.2 显示右上角菜单接口 ∙ 9.3 关闭当前网页窗口接口 ∙ 9.4 批量隐藏功能按钮接口 ∙ 9.5 批量显示功能按钮接口 ∙ 9.6 隐藏所有非基础按钮接口 ∙ 9.7 显示所有功能按钮接口 ∙ 10 扫一扫 ∙ 10.1 调起扫一扫接口 ∙ 11 小店 ∙ 11.1 跳转商品页接口 javascript说明∙ 12 卡券 ∙ 12.1 调起适用于门店的卡券列表并获取用户选择列表 ∙ 12.2 批量添加卡券接口 ∙ 12.3 查看卡包中的卡券接口 ∙ 13 支付 ∙ 13.1 发起一个支付请求 ∙ 14 附录1-JS-SDK使用权限签名算法 ∙ 15 附录2-所有JS接口列表 ∙ 16 附录3-所有菜单项列表 ∙ 17 附录4-卡券扩展字段及签名生成算法 ∙ 18 附录5-常见错误及解决方法 ∙ 19 附录6-DEMO页面和示例代码 ∙ 20 附录7-问题反馈 |
概述
JS-SDK是公众平台面向网页开发者提供的基于内的网页开发工具包。
通过使用JS-SDK,网页开发者可借助高效地使用拍照、选图、语音、位置等手机系统的能力,同时可以直接使用分享、扫一扫、卡券、支付等特有的能力,为用户提供更优质的网页体验。
此文档面向网页开发者介绍JS-SDK如何使用及相关注意事项。
JSSDK使用步骤
步骤一:绑定域名
先登录公众平台进入“设置”的“功能设置”里填写“JS接口安全域名”。
备注:登录后可在“开发者中心”查看对应的接口权限。
步骤二:引入JS文件
在需要调用JS接口的页面引入如下JS文件,(支持https):res.wx.qq/open/js/jweixin-1.0.0.js
备注:支持使用 AMD/CMD 标准模块加载方法加载
步骤三:通过config接口注入权限验证配置
所有需要使用JS-SDK的页面必须先注入配置信息,否则将无法调用(同一个url仅需调用一次,对于变化url的SPA的web app可在每次url变化时进行调用)。
wx.config({ debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId: '', // 必填,的唯一标识 timestamp: , // 必填,生成签名的时间戳 nonceStr: '', // 必填,生成签名的随机串 signature: '',// 必填,签名,见附录1 jsApiList: [] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2});
步骤四:通过ready接口处理成功验证
wx.ready(function(){ // config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。});
步骤五:通过error接口处理失败验证
wx.error(function(res){ // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。});
接口调用说明
所有接口通过wx对象(也可使用jWeixin对象)来调用,参数是一个对象,除了每个接口本身需要传的参数之外,还有以下通用参数:
1. success:接口调用成功时执行的回调函数。
2. fail:接口调用失败时执行的回调函数。
3. complete:接口调用完成时执行的回调函数,无论成功或失败都会执行。
4. cancel:用户点击取消时的回调函数,仅部分有用户取消操作的api才会用到。
5. trigger: 监听Menu中的按钮点击时触发的方法,该方法仅支持Menu中的相关接口。
以上几个函数都带有一个参数,类型为对象,其中除了每个接口本身返回的数据之外,还有一个通用属性errMsg,其值格式如下:
1. 调用成功时:"xxx:ok" ,其中xxx为调用的接口名
2. 用户取消时:"xxx:cancel",其中xxx为调用的接口名
3. 调用失败时:其值为具体错误信息
基础接口
判断当前客户端版本是否支持指定JS接口
wx.checkJsApi({ jsApiList: ['chooseImage'] // 需要检测的JS接口列表,所有JS接口列表见附录2, success: function(res) { // 以键值对的形式返回,可用的api值true,不可用为false // 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"} });
备注:checkJsApi接口是客户端6.0.2新引入的一个预留接口,第一期开放的接口均可不使用checkJsApi来检测。
分享接口
请注意不要有诱导分享等违规行为,对于诱导分享行为将永久回收接口权限,详细规则请查看:朋友圈管理常见问题 。
获取“分享到朋友圈”按钮点击状态及自定义分享内容接口
wx.onMenuShareTimeline({ title: '', // 分享标题 link: '', // 分享链接 imgUrl: '', // 分享图标 success: function () { // 用户确认分享后执行的回调函数 }, cancel: function ()
{ // 用户取消分享后执行的回调函数 }});
获取“分享给朋友”按钮点击状态及自定义分享内容接口
wx.onMenuShareAppMessage({ title: '', // 分享标题 desc: '', // 分享描述 link: '', // 分享链接 imgUrl: '', // 分享图标 type: '', // 分享类型,music、video或link,不填默认为link dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空 success: function () { // 用户确认分享后执行的回调函数 }, cancel: function () { // 用户取消分享后执行的回调函数 }});
获取“分享到QQ”按钮点击状态及自定义分享内容接口
wx.onMenuShareQQ({ title: '', // 分享标题 desc: '', // 分享描述 link: '', // 分享链接 imgUrl: '' // 分享图标 success: function () { // 用户确认分享后执行的回调函数 }, cancel: function () { // 用户取消分享后执行的回调函数 }});
获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口
wx.onMenuShareWeibo({ title: '', // 分享标题 desc: '', // 分享描述 link: '', // 分享链接 imgUrl: '' // 分享图标 success: function () { // 用户确认分享后执行的回调函数 }, cancel: function () { // 用户取消分享后执行的回调函数 }});
图像接口
拍照或从手机相册中选图接口
wx.chooseImage({ success: function (res) { var localIds = res.localIds; // 返回选定照片的本地ID列表,localId可以作为img标签的src属性显示图片 }});
预览图片接口
wx.previewImage({ current: '', // 当前显示的图片链接 urls: [] // 需要预览的图片链接列表});
上传图片接口
wx.uploadImage({ localId: '', // 需要上传的图片的本地ID,由chooseImage接口获得 isShowProgressTips: 1, // 默认为1,显示进度提示 success: function (res) { var serverId = res.serverId; // 返回图片的服务器端ID }});
备注:上传图片有效期3天,可用多媒体接口下载图片到自己的服务器,此处获得的 serverId 即 media_id,参考文档 ../12/58bfcfabbd501c7cd77c19bd9cfa8354.html 目前多媒体文件下载接口的频率限制为10000次,如需要调高频率,请邮件open-weixin@qq,邮件主题为【申请多媒体接口调用量】,请对你的项目进行简单描述,附上产品体验链接,并对用户量和使用量进行说明。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论